我使用jquery ajax调用从控制器获取部分剃刀视图。
$.ajax({
type: "POST",
contentType: "application/json",
url: url,
async: false,
data: JSON.stringify(data)
}).success(function(result) {
container.html(result);
}).fail(function(result) {
// fail
}); 这可以很好地工作,返回的html是一个只有几个文本输入的表单。如果我查看元素,输入的值是由调用返回的内容设置的。
示例:
<input class="valid" id="ItemId" name="ItemId" type="text" value="ItemValue">当我尝试在该元素上使用其他jquery时,该值始终为空,并且当我在该元素上执行选择器时,该元素与chrome inspect元素中显示的内容不同。
绑定到元素和选择的代码:
$(document).on("blur", "#ItemId", function(e) {
var itemId = $("#" + e.target.id).val();
}如果我在输入框中输入"NewValue“,就会调用on NewValue事件,但这里的itemId是"”,元素在chrome控制台中如下所示:
<input class="valid" id="ItemId" name="ItemId" type="text" value>我希望value=是“NewValue”。我遗漏了什么或做错了什么?
注意:如果我使用razor呈现部分视图,而不从jQuery ajax检索它,那么这段jquery代码就可以正常工作。输入值按预期工作。
发布于 2014-03-31 03:12:52
你忘了)};
$(document).on("blur", "#ItemId", function(e) {
var itemId = $("#" + e.target.id).val();
});https://stackoverflow.com/questions/22746341
复制相似问题