我在div元素中调用了Ajax.BeginForm,所以我想获取表单所在的div元素。相当于如何根据AJAX.BeginForm'onsuccess的名称获取表单或div
function function1(event){
var table = $(event.target).parents("table");
}
它可以从Ajax.beginform的onsuccess函数中使用。任何人都可以帮忙吗?
我在div元素中调用了Ajax.BeginForm,所以我想获取表单所在的div元素。相当于如何根据AJAX.BeginForm'onsuccess的名称获取表单或div
function function1(event){
var table = $(event.target).parents("table");
}
它可以从Ajax.beginform的onsuccess函数中使用。任何人都可以帮忙吗?
原来,在onsuccess函数中,“this”是指表单元素。所以,我可以很容易地使用,
$(this).find("mydiv");
或
$(this).parent("table").find("mydiv");
MVC4好像破了。可怕的是,“这个”现在是XHR。 要解决,使用这个讨厌的黑客:
$(function() {
var lastEvent = null;
$("body").on("submit", "form[data-ajax=true]", function(e) {
lastEvent = e;
});
window.TagXhrWithEventTarget = function(xhr) {
xhr.capturedSubmitEvent = lastEvent;
}
});
,并开始形式:
@using (Ajax.BeginForm("MyAction", "MyController", new AjaxOptions
{
HttpMethod = "POST",
OnSuccess = "ProcessResponse",
OnBegin = "TagXhrWithEventTarget"
}
,然后在ProcessResponse:
function ProcessResponse(data, status, xhr) {
var e = xhr.capturedSubmitEvent;
var control = e.target;
. . .
看起来像它不再在MVC4 – 2013-11-19 20:46:57