这是我的脚本,在更改输入值之后应该将其发送到带有Ajax的php文件。但它从输入字段发送实际值,这是通过php设置的。如何设置新值?
var idg;
var newg;
$('input.readonly').live("click",
function() {
$(this).attr('readonly', false);
idgs=$(this).attr('id');
newg=$(this).attr('value');
$(this).change(function(){
$.ajax({
type:'POST',
url: 'new.php',
data: "idgs="+ idgs +"&newg="+ newg,
success: function(data) { $('.right').html(data); }
});
})
});
答案 0 :(得分:1)
$(this).change(function(){
$.ajax({
type:'POST',
url: 'new.php',
data: "idgs="+ idgs +"&newg="+ $(this).val(),
success: function(data) {
$('.right').html(data);
}
});
});
答案 1 :(得分:1)
var idg;
var newg;
$('input.readonly').live("click", function(){
$(this).attr('readonly', false);
$(this).change(function(){
idgs=$(this).attr('id');
newg=$(this).val();
$.ajax({
type:'POST',
url: 'new.php',
data: "idgs="+ idgs +"&newg="+ newg,
success: function(data) {
$('.right').html(data);
}
});
})
});
这应该是这样做的,你可以在更改之前用idg
和newg
填充默认值。
答案 2 :(得分:0)
您需要使用val()
方法,如下所示:
newg=$(this).val();
答案 3 :(得分:0)
尝试使用newg
设置.val()
,并在change
处理程序中设置它以获取更新的值。
newg = $(this).val();
此外,您可能会发现将对象传递给data
,la:
data: {
'idgs': idgs,
'newg': newg
},
完整代码:
$('input.readonly').live("click", function () {
$(this).attr('readonly', false);
$(this).change(function () {
var idgs = $(this).attr('id');
var newg = $(this).val();
$.ajax({
type: 'POST',
url: 'new.php',
data: {
'idgs': idgs,
'newg': newg
},
success: function (data) {
$('.right').html(data);
}
});
})
});