关于JS星星评分,怎么把选择的分数提交插入数据库,评分如何赋值给隐藏域呢

关于JS星星评分,怎么把选择的分数提交插入数据库,评分如何赋值给隐藏域呢,第1张

用 $('#star')raty('score') 来获取评分。然后通过jquery的ajax将评分提交到服务器,服务器负责插入数据库。可以不用隐藏域的,当然你愿意用隐藏域,你用jquery取得数据之后,用val赋值给隐藏域也可以。

注意你的代码里#star换成你代码里的那个页面对象的ID。

jqueryraty的官网有相关的API介绍。

PHP中并不能直接获得JS的值,因为一个运行在客户端,一个运行在服务器端。如果需要这两个语言进行交流,可以这么做:

对于JS向PHP传递,可使用cookie,查询字符串(get),post

对于PHP向JS传递可以直接将值输出到JS的变量值处;或者将值输出给隐藏的input元素,然后从dom获取;或者利用ajax获取

·把你的form表单里的action删掉

否则会出现两次提交,AJAX提交和form表单自己的提交

而form默认方式为get

如果还有问题的话可以借助隐藏域,详情网页链接

jQuerypost这个是jquery框架的ajax方法中的post方法,意思是把数据用post方式提交到服务器的/ajax/detectaspx这个文件中去处理

后面的{Type:getSelectedText()}这个里面的是要发送到服务器的数据,变量名是Type(即在服务器的detectaspx中,可以使用requestform("Type")来取到值。至于getSelectedText()这个函数则是自定义的一个函数,用来取值用的吧,这个要看你代码中的这个函数的具体内容才知道它是取什么东西的值。

再后面的function(data){}这个则是一个回调函数,意思是ajax请求发送成功后取回返回值时,触发这个函数来处理这些返回值。

最后jQuery("#forumclass")empty()这句的意思是把id为forumclass这个容器中的所有子节点删除。

先说一下,你的代码里面complete的代码用不到,只需要写success部分就行了。

数据没有传给另一个js的问题,因为只有当前的ajax知道什么时候有数据,所以,你应该在当前ajax中调用另一个js中的方法,并把json数据拿过去。

还有,你声明datatype是json了,success中拿到的就是json数据了。

//ajs

function afterAjaxSuccess(jsonData) {

alert(1);

reutrn true;

}

//html

function gameSend(args, callback) {

$ajax({

url:argsurl,

data:argsdata,

dataType: 'JSON',

type: 'POST',

success: function(data) {

callback(data);

if (callback !== afterAjaxSuccess)

afterAjaxSuccess(data);

}

});

}

从页面传对象到Action

Action用List接收,这样肯定是可以的,只要你的参数名字相同就行

如果真的不行,那就是用struts2的类型转换功能,手动把js数组串转换为

java的List,需要是用strutstypeconverter接口

从Action传对象到页面,把json串,以流的形式写入页面,这样 ajax就会接到

如果你不熟悉,那么可以使用json插件,目的是简化你的页面流 *** 作

到页面的json只是字符串,通过js的方法exal()动态编译就能得到json对象

实现前端和后端的参数传递,其实就是前端(页面)向服务器发起一个请求,在请求中附带了一些我们需要的参数。当服务器端接收到这个请求后,通过解析得要我们要传递的参数,这要就达到了我们的目的了。

举两个例子

java我们可以通过:

requestgetParameter("xxxx");//xxxx表示参数名称来获取请求参数名称

C#我们可以通过:

GET请求参数用 RequestQueryString,获取POST请求参数用RequestForm

下面讲下POST和GET请求的主要区别:

1、GET请求的数据会附在URL之后(就是 把数据放置在>

2、GET方式提交的数据最多只能是1024字节,理论上POST没有限制。

3、POST的安全性要比GET的安全性高。安全的含义是真正的Security的含义,比如:通过GET提交数据,用户名和密码将明文出现在URL上,因为(1)登录页面有可能被浏览器缓存,(2)其他人查看浏览器的历史纪录,那么 别人就可以拿到你的账号和密码了。

"刷新页面后依旧显示刷新前的值 且数据源等都不变 相当于这一块不刷新的效果"

如果你是想保持静态内容,后台不进行重新执行的话,基本不可能,整页刷新的话必然重新执行,除非你用框架把内容都隔开,或者用静态页面内容,然后用js去设定值,但那样下拉菜单就做不到动态内容了。

以上就是关于关于JS星星评分,怎么把选择的分数提交插入数据库,评分如何赋值给隐藏域呢全部的内容,包括:关于JS星星评分,怎么把选择的分数提交插入数据库,评分如何赋值给隐藏域呢、怎样在php中得到js的值、使用原生AJAX提交数据为什么会在地址栏明码显示信息等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/9300839.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-26
下一篇 2023-04-26

发表评论

登录后才能评论

评论列表(0条)

保存