先贴两段代码 function jiesuan(){ var str=""; var object=$("checkbox.checkbox"); if(object[i].checked=true){ str=str+object[i].value+"," } var url="order.action?str="+str; $.post(url,null,callback); } <action name="order" class="com.buy.Action.OrderAction" method="insert"> </action> 大致意思就是把页面的值加起来用逗号分隔,然后将str传给void类型的action,设置了一个button的onclick=”jiesuan()”,但是单击后毫无反应,Ajax之前就用过一次,不太熟,全部分都给了,大家帮忙解决一下,谢谢了 |
|
10分 |
<action name=”/order”
|
10分 |
$.ajax({
url:”order.action”, type:”GET”, dataType:”json”, data:{ “参数1”:参数1的值, “参数2”:参数2的值 }, success:function(data) { } }); |
我用的是.action 这样也试过,也没反应,所以我用了更简单的传值 |
|
10分 |
function jiesuan(){alert(“call jiesuan success”);}
你看看进了这个函数没? 如果alert出来了,那就是url问题。 |
10分 |
你的url最后多一个逗号,打出来看看可是
|
10分 |
str=str+object[i].value+”,”
var url=”order.action?str=”+str; URL参数连接符应该用&吧?逗号是错误的。 |
str=str+object[i].value+”,”
加个逗号是为了降值进行分隔。 自顶一下 |
|
1分 |
你的object[i]中的i怎么来的?没看到哪里有赋值啊。你可以用chrome看看报的什么错,然后跟踪进去。
|
可以试试把你的checkbox 封装在一个form里 把该form 序列化在ajax提交表单
提交按钮绑定事件 $("#提交按钮id").click(function(){ var formData=$("#表单id").serialize(); $.ajax({ type: "POST", url: "/xxx/yyy/zzz.action", data:formData, success: function(data){ alert("保存成功"); } }); });
|
|
10分 |
1.请求需要加上时间戳。
2.请求后回调函数里调用你的方法 var url = ""/user/order.action?tt="" + new Date(); $.get(url,function(data){ alert(data); }) |
10分 |
function jiesuan(){ // 方法名称太随便了 var str=""; var object=$("checkbox.checkbox"); if(object[i].checked=true){ str=str+object[i].value+","; } $.ajax({ type: "POST", url: "order.action", dataType: "json", data: "str=" + str, success: function(data){// 成功返回的数据 var data = eval("(" + data + ")"); alert(data); } }); } |
9分 |
1、可在js中加alert来调试,或者用firefox调试,确定是否执行到$.post。
2、alert(url),然后复制到浏览器地址栏,确定请求地址是否正确。 3、既然使用$.post,那建议用post方式发送请求,将参数从url中拎出来,因为url长度是用限制的。 |
我也遇到过这个问题,有点浏览器请求的到,有点不行,如果代码都正确,在最后一个大括号内写上setTimeout(“rehref()”,500);延迟几百毫秒跳转或执行下面的程序,
|