我正在尝试使用 JQuery.change 作为 View 输入来更新数据库中记录的描述字段。但是,在连接我的客户端代码之后,我现在在尝试对 JSON 进行字符串化以进行 ajax 调用时遇到循环引用异常。任何帮助将不胜感激。
代码如下:
<div class="divTableCell">
<label for="CheckRunDescription" id="checkRunDescriptionLabel">Description:</label>
<input type="text" id="CheckRunDescription" style="width: 270px;" />
</div>
JQuery:
$('#CheckRunDescription')
.change(function() {
$(this).data("old", $(this).data("new") || "");
var newDetails = $(this).data("new", $(this).val());
updateCheckRunDetails(newDetails);
});
function updateCheckRunDetails(newDetails) {
var checkRunID = $('#checkRunID').val();
var js = JSON.stringify({ checkRunDetails:newDetails, checkRunID:checkRunID });
$.ajax({
type: "POST",
contentType: "application/json; charset=utf-8",
url: './PayInvoicesWS.asmx/UpdateCheckRunDetails',
data: js,
dataType: "json",
success: function (data) {
},
error: function (data) {
}
});
}
最佳答案
您正在尝试将 jQuery 对象字符串化。
var newDetails = $(this).data("new", $(this).val());// returns `$(this)`
我猜你想将输入值传递给函数
尝试
$('#CheckRunDescription')
.change(function() {
var newDetails = $(this).val();
$(this).data("old", $(this).data("new") || "").data("new", newDetails );
updateCheckRunDetails(newDetails);
});
关于Javascript 循环引用异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40052699/