使用jquery动态更改隐藏的输入元素值

时间:2011-11-29 12:21:34

标签: jquery ajax

使用一个隐藏元素来捕获更改的值

并使用jquery

更改元素值
changeValue(no){
   $('#mobileno').val(no);
}

然后将值传递给ajax

$.ajax({
    url:url,
    type: 'post',       
    data: '{"id":"1", "mobileno":$("#mobileno").val()}',
    success: function(data, status) {
    console.log("Success!!");        
    },    
});

mobileno字段在发布时始终显示空值,如果我在更改值方法中使用警报则工作正常

changeValue(no){
 $('#mobileno').val(no);    
 alert( $('#mobileno').val());
}

然后它工作正常,你的帮助将不胜感激

4 个答案:

答案 0 :(得分:4)

您引用了JS对象,将其变为字符串

$.ajax({
    url:url,
    type: 'post',       
    data: '{"id":"1", "mobileno":$("#mobileno").val()}',
    ------^                                            ^--------
    success: function(data, status) {
    console.log("Success!!");        
    },    
});

使用此

$.ajax({
    url:url,
    type: 'post',       
    data: {"id":"1", "mobileno": $("#mobileno").val() },
    success: function(data, status) {
    console.log("Success!!");        
    }    
});

答案 1 :(得分:1)

在为data参数赋值时,不应使用单个小数。试试这个;

$.ajax({
    url:url,
    type: 'post',       
    data: {"id":"1", "mobileno":$("#mobileno").val()},
    success: function(data, status) {
    console.log("Success!!");        
    }
});

顺便说一句,success参数后面有一个逗号,可能会导致问题。

答案 2 :(得分:1)

将您的ajax调用更改为:

$.ajax({
    url:url,
    type: 'post',       
    data: {"id":"1", "mobileno":$("#mobileno").val()}, //this line changed
    success: function(data, status) {
    console.log("Success!!");        
    }   // removed comma
}); 

删除数据行上的引号和最后一个括号中的逗号

答案 3 :(得分:1)

尝试:

$.ajax({
    url:url,
    type: 'post',       
    data: "id=1&mobileno="+$("#mobileno").val(),
    success: function(data, status) {
    console.log("Success!!");        
    },    
});