我试图在提交表单后获得表单字段值。这里是我的Jquery:
$(document).ready(function() {
var options = {
target: '.error_box_wrapper',
dataType: 'html',
beforeSubmit: showRequest,
success: showResponse
};
$('#edit_group_form').live('submit', function() {
$("#progress").show();
$(this).ajaxSubmit(options);
return false;
});
});
// pre-submit callback
function showRequest(formData, jqForm, options) {
var queryString = $.param(formData);
var groupid = $('input[name=groupid]').fieldValue();
return true;
}
// post-submit callback
function showResponse(responseText, statusText, xhr, $form) {
$("#leftside div#groups_container").load('includes/my_groups.php');
$("#middle").load('includes/main_middle_div.php?view=editgroup&groupid=' + groupid);
$("#progress").hide();
}
如您所见,我可以在预提交回调函数中获得表单字段值:
var groupid = $('input[name=groupid]').fieldValue();
但是,我无法在这里的post-submit回调函数中使用这个变量:
$("#middle").load('includes/main_middle_div.php?view=editgroup&groupid=' + groupid);
我想我要做的是将groupid变量从预提交回调函数传递到后提交回调函数。
scope issue…预提交缓存组
$(document).ready(function() {
var options = {
target: '.error_box_wrapper',
dataType: 'html',
beforeSubmit: showRequest,
success: showResponse
};
$('#edit_group_form').live('submit', function() {
$("#progress").show();
$(this).ajaxSubmit(options);
return false;
});
});
// pre-submit callback
function showRequest(formData, jqForm, options) {
var queryString = $.param(formData);
$(document).data("groupid", $('input[name=groupid]').fieldValue());
return true;
}
// post-submit callback
function showResponse(responseText, statusText, xhr, $form) {
$("#leftside div#groups_container").load('includes/my_groups.php');
$("#middle").load('includes/main_middle_div.php?view=editgroup&groupid=' + $(document).data("groupid"));
$("#progress").hide();
}
groupid
从哪里来??
它在另一个函数中,所以它和你试图访问它的地方不在同一个作用域中。