我在asp.net中使用jQuery将值分配给隐藏字段(hfstockcode)。但是它返回了[object Object]。当我在控制台中打印值时,它显示v.fn.v.init [1]。如何在隐藏字段中获取值。

$(document).on("change", '.stockcode', function () {
    var fieldid = $(this).attr('data-fieldid');
    alert(fieldid);
    var stock = $('#field_iditem' + fieldid + '').val();
    alert(stock);
    var hai = $('#hfstockcode').val(stock);
    //console.log(hai);
    alert(hai);
});

var fName1 = $('<div class="col-md-2"> <input type="text" placeholder="Item" data-fieldid="' + intId + '"  id="field_iditem' + intId + '"  name="field_item"  class="form-control stockcode"></div>');


我的隐藏字段:

<asp:HiddenField ID="hfstockcode" runat="server" />

最佳答案

.val()的setter版本返回一个jQuery对象,这就是为什么在提示hai时得到[Object object]的原因。

如果要获取隐藏字段的值,则需要使用.val()的getter版本。

$(document).on("change", '.stockcode', function () {
    var fieldid = $(this).attr('data-fieldid');
    alert(fieldid);
    var stock = $('#field_iditem' + fieldid + '').val();
    alert(stock);
    $('#hfstockcode').val(stock);
    var hai = $('#hfstockcode').val();
    //console.log(hai);
    alert(hai);
});

10-06 00:42