在datatable中,我为每一行输入一个输入,我想在此输入中添加一些文本,对于每个输入我想要获取文本并将其保存到数据库中 我正在使用laravel并想使用ajax 现在它只适用于第一个输入,但对于我写的第二个输入它将采用第一个输入文本
输入字段:
{data: 'vendor_id',mRender: function (data, type, row) {
return '<label hidden>'+data+'</label> <input type="text" id="vendor_name" class="vendor_name" data-id="'+row.id+'" onClick="this.select();" value="'+data+'">';}
},
{data: 'vendor_no', mRender: function (data, type, row) {
return '<label hidden>'+data+'</label> <input type="text" id="vendor_no" class="vendor_no" onClick="this.select();" value="'+data+'">';}
},
ajax将变量发送到控制器
<script type="text/javascript">
$(document).on('blur focusout', "#vendor_name", function(){
var id = $(this).data("id");
$.ajax({
type: 'POST',
url: 'Vendor_Save',
data: {
'_token': $('input[name=_token]').val(),
'currentid': id,
'current_vendor_name':$('#vendor_name').val(),
},
success: function(data) {
console.log(data);
}
});
});
</script>
答案 0 :(得分:0)
由于ID必须是唯一的...而是使用该类,您需要事件发生的类实例的值。
$(document).on('blur focusout', ".vendor_name", function(){
// ^^ class selector
var id = $(this).data("id");
$.ajax({
type: 'POST',
url: 'Vendor_Save',
data: {
'_token': $('input[name=_token]').val(),
'currentid': id,
'current_vendor_name':$(this).val(),// `this` is current instance
},
success: function(data) {
console.log(data);
}
});
});