一尘不染

通过jQuery一起提交表单和变量

ajax

我正在使用两种类型的提交。

有$ .post

$.post('servers_side.php', { var1: var1, var2:var2},
function(result) 
{
some code...
});

它将单独的变量发送到服务器端脚本。

还有一个AjaxSubmit插件可以提交整个表单

$('#form').ajaxSubmit({success: function(result)
{
some code...
}
});

但是,现在我有以下任务,假设我有一个表单和一些必须同时提交的变量。

那么可以一起提交表单+一些变量吗?


阅读 207

收藏
2020-07-26

共1个答案

一尘不染

更新资料

您可以通过以下方式提交:

var Vars = {var1: var1, var2:var2};
var varsData = $.param(Vars);

// form data
var formData = $('#formID').serialize();

var data = varsData + '&' + formData;

$.ajax({
  type: 'POST',
  url: 'servers_side.php',
  data: data,
  success: function(res){ alert (res) }
})

您可以jQuery.param()用来将数组或对象转换为URL友好的名称/值巴黎。您可能还需要使用jQuery.serialize()将表单数据转换为名称-
值巴黎。这是您可以进行的操作:

var Vars = {var1: var1, var2:var2};
var varsData = $.param(Vars);

// form data
var formData = $('#formID').serialize();

var data = varsData + '&' + formData;

现在data包含您可以在ajax请求中发送的自定义变量和表单元素的所有数据。

2020-07-26