//jSP页面绑定的事件
function gDel(){
var str="";
    var sel=document.getElementsByName("ids");//获取checkbox的值
    for( var i=0;i<sel.length;i++)
        if(sel[i].checked==true){
            str+=sel[i].value+",";
     alert(sel[i].value); //验证获取到的chechbox的值,--成功获取
            
        }
       
         
    
    $.ajax({
url: 'core\com\linewell\core\data_input\Data_input.action',  //后台action的URL
type : 'post',
async : false,
dataType : 'json',
data : {
ids : str,      //复选框的value数组
fn   :  updateXZCFState  
}, success : function(response) {
    
if (response.result) {

} else {
alert("提示信息", "生成失败", "error", 1500);
}
},
error : function() {
alert("操作失败");
}
});       
}//ajax对应的action
else if ("updateXZCFState".equals(fn)) {
       Data_inputBussiness data_inputBussiness = new Data_inputBussiness();
       List<String> params = new ArrayList<String>();
data_inputBussiness.updateSATASql(request, params);
System.out.print("aaa");
       }//aciton调用的updateSAtaSql方法
public String updateSATASql(HttpServletRequest request,List<String> params){
Session uSession = (Session) request.getSession().getAttribute(Session.SESSION_NAME);
User user = uSession.getUser();
    String ids=request.getParameter("ids");
        String[] arr = ids.split(",");
        String sql = "";
        if(arr.length > 0){
         sql= "update cfjgga  set XZCF_STATE=3 where "; 
        }      
        for(int i=0;i <arr.length-1;i++) 
        { 
         sql = sql + " UNID= ' "+arr[i]+ " ' or "; 
        } 
            sql = sql + " UNID= ' "+arr[arr.length-1]+ " ' "; 

解决方案 »

  1.   

    你ajax对应得action中难道不是去访问Data_input方法吗?
      

  2.   

    只看了几行,局部变量访问不到,先改了再说,后台有问题debug打断点
      

  3.   

    URL路径写全
      

  4.   

    在action中我写了个输出语句 后台没有输出也没有报错   
    我把ajax的地址改后   ajax这儿是可以执行了   但是浏览器提示操作失败 及没有进入success方法中
    至于不执行Data_input方法,是本身的Data_input对应使用的undate方法不能满足需求,我是自己写了个工具类实现数据状态的更改