admin管理员组文章数量:1399509
I have a form that is brought up in a ajaxed modal which I am using for updating user details. When the modal loads I call a js function:
teamCreate: function() {
$j("#step1,form#createEditTeam").show();
$j("#step2").hide();
var options = {
type: "get",
dataType: 'json',
beforeSubmit: before, // pre-submit callback
success: success // post-submit callback
};
$j("form#createEditTeam").ajaxForm(options);
function before(formData, jqForm, options){
var valid = $j("form#createEditTeam").valid();
if (valid === true) {
$j(".blockMsg").block({ message: $j('#panelLoader') });
return true; // submit the form
} else {
$j("form#createEditTeam").validate();
return false; // prevent form from submitting
}
};
function success(data){
if (data.status == "success") {
$j(".blockMsg").unblock();
} else {
//
}
};
function error(xhr, ajaxOptions, thrownError){
alert("Error code: " + xhr.statusText);
};
}
This works just fine when I first submit the form, regardless how many times the modal is opened and closed. However, if I submit the form and then open the modal again and try to submit the form again I get a js error:
h is undefined
I have a form that is brought up in a ajaxed modal which I am using for updating user details. When the modal loads I call a js function:
teamCreate: function() {
$j("#step1,form#createEditTeam").show();
$j("#step2").hide();
var options = {
type: "get",
dataType: 'json',
beforeSubmit: before, // pre-submit callback
success: success // post-submit callback
};
$j("form#createEditTeam").ajaxForm(options);
function before(formData, jqForm, options){
var valid = $j("form#createEditTeam").valid();
if (valid === true) {
$j(".blockMsg").block({ message: $j('#panelLoader') });
return true; // submit the form
} else {
$j("form#createEditTeam").validate();
return false; // prevent form from submitting
}
};
function success(data){
if (data.status == "success") {
$j(".blockMsg").unblock();
} else {
//
}
};
function error(xhr, ajaxOptions, thrownError){
alert("Error code: " + xhr.statusText);
};
}
This works just fine when I first submit the form, regardless how many times the modal is opened and closed. However, if I submit the form and then open the modal again and try to submit the form again I get a js error:
h is undefined
-
1
I don't see an
h
in your code... does the error reference a file and a line number by any chance? – Jeremy Commented Mar 18, 2010 at 1:11 -
1
h
is a variable set in the jQuery library. The line in jQuery that Firebug reports is causing the problem is: (function(b){function s(c,a){var e=c==...etHack:4};var k=null,m=[]}})(jQuery); I assumeh
is what jQuery is assigning as the DOM object, but I can't figure out why it is not being assigned correctly. – Simon Commented Mar 18, 2010 at 1:27
1 Answer
Reset to default 6To more quickly debug this, I would strongly suggest changing out the minified version of the JQuery library with the full version of it, then running your code again. You'd be hard-pressed to figure out the root of the problem using the minified version, but you'd most certainly find it easier to debug if you have the full version running. The variable and function names would make much more sense.
本文标签: javascriptjQuery ajaxForm quoth is undefinedquot problemStack Overflow
版权声明:本文标题:javascript - jQuery ajaxForm "h is undefined" problem - Stack Overflow 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://www.betaflare.com/web/1744218490a2595750.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论