Javascript 带有表单值的jQuery AJAX提交
我已经编写了一些jQuery代码,它向我的CMS发送一个AJAX请求,根据请求中发送的操作触发不同的PHP操作 这很好,但是表单的值没有随AJAX post一起发送。我尝试过各种不同的方法,比如新表单和序列化表单数据,但似乎没有任何效果 我以为只要把这个包括在通话中就足够了:Javascript 带有表单值的jQuery AJAX提交,javascript,jquery,ajax,forms,Javascript,Jquery,Ajax,Forms,我已经编写了一些jQuery代码,它向我的CMS发送一个AJAX请求,根据请求中发送的操作触发不同的PHP操作 这很好,但是表单的值没有随AJAX post一起发送。我尝试过各种不同的方法,比如新表单和序列化表单数据,但似乎没有任何效果 我以为只要把这个包括在通话中就足够了: $formData = $('#checkout-cart').serialize(); data: $formData, 谁能给我指一下正确的方向吗 var formSubmit = { config: {
$formData = $('#checkout-cart').serialize();
data: $formData,
谁能给我指一下正确的方向吗
var formSubmit = {
config: {
guestUser: '.create-guest-user',
},
initialize: function () {
var $this = this;
$(this.config.guestUser).click(function(event) {
event.preventDefault();
$this.createGuestUser();
return false;
});
},
// Create Guest User
createGuestUser: function (elem) {
$.post(window.location.href, {
type: 'ajax',
data: $formData,
url: window.location.href,
action: 'createGuestUser',
}).done(function (response) {
$('.create-guest-user').addClass('disabled');
});
}
};
$(document).ready(function () {
formSubmit.initialize();
});
HTML
你的个人资料
客户群
违约
名字
姓
电子邮件
电话
你的地址
单位
地址1
地址2
城市
邮政编码
国家
阿富汗阿兰岛
地区/州
继续
请将url属性添加到您的$中。post
var formSubmit = {
config: {
guestUser: '.create-guest-user',
},
initialize: function () {
var $this = this;
$(this.config.guestUser).click(function(event) {
event.preventDefault();
$this.createGuestUser();
return false;
});
},
// Create Guest User
createGuestUser: function (elem) {
$.ajax({
type: 'post',
data: $formData,
url: 'url.php'
}).done(function (response) {
$('.create-guest-user').addClass('disabled');
});
}
};
$(document).ready(function () {
formSubmit.initialize();
});
请将url属性添加到您的
$。post
var formSubmit = {
config: {
guestUser: '.create-guest-user',
},
initialize: function () {
var $this = this;
$(this.config.guestUser).click(function(event) {
event.preventDefault();
$this.createGuestUser();
return false;
});
},
// Create Guest User
createGuestUser: function (elem) {
$.ajax({
type: 'post',
data: $formData,
url: 'url.php'
}).done(function (response) {
$('.create-guest-user').addClass('disabled');
});
}
};
$(document).ready(function () {
formSubmit.initialize();
});
$.post
的第二个参数只是post数据,而不是options参数。如果要传递选项,则需要使用$.ajax
,而不是$.post
在进行AJAX调用时,还需要更新$formData
,否则将从最初加载页面时获取表单的值
$.ajax
没有操作
选项。如果要添加不在表单输入中的其他POST参数,则需要将它们添加到$formData
createGuestUser: function (elem) {
var $formData = 'action=createGuestUser&' + $('#checkout-cart').serialize();
$.ajax({
type: 'post',
data: $formData,
url: window.location.href,
}).done(function (response) {
$('.create-guest-user').addClass('disabled');
});
}
$.post
的第二个参数只是post数据,而不是options参数。如果要传递选项,则需要使用$.ajax
,而不是$.post
在进行AJAX调用时,还需要更新$formData
,否则将从最初加载页面时获取表单的值
$.ajax
没有操作
选项。如果要添加不在表单输入中的其他POST参数,则需要将它们添加到$formData
createGuestUser: function (elem) {
var $formData = 'action=createGuestUser&' + $('#checkout-cart').serialize();
$.ajax({
type: 'post',
data: $formData,
url: window.location.href,
}).done(function (response) {
$('.create-guest-user').addClass('disabled');
});
}
谢谢你的回复-我恐怕没有那么幸运。请求是否会转到服务器?调用会很好地转到服务器并启动我的PHP操作脚本,但是我无法获得任何$\u POST值。在将$formData记录到浏览器控制台时,我还可以看到它被很好地捕获。您还可以在问题中发布html表单代码吗?
$的第一个参数。post
是URL,您不需要在选项参数中重复它。感谢您的回复-恐怕不会有什么好结果。请求是否会转到服务器?调用会很好地转到服务器并触发我的PHP操作脚本,但我无法获得任何$\u POST值。在将$formData记录到浏览器控制台时,我还可以看到它被很好地捕获。您还可以在问题中发布html表单代码吗?$的第一个参数是URL,您不需要在选项参数中重复它。键入:“ajax”
无效。它应该是类型:“get”
或类型:“post”
。只有在使用$.ajax
时才需要该选项$。post
自动将其设置为post
,类型:“ajax”
无效。它应该是类型:“get”
或类型:“post”
。只有在使用$.ajax
时才需要该选项$.post
自动将其设置为post
。感谢您的回复。PHP正在switch语句中发布并捕获该操作。您的意思是类似$\u post['action']
?我已更新了答案,以显示如何在post数据中发送附加参数。感谢您回复。不完全是我的意思是我用这种方式。。将操作传递到提交的签出页面的不同元素的switch case语句中。这是修剪过的版本。你的代码有$action=$post['action']
这基本上就是我说的。谢谢你的回复。PHP正在一个switch语句中发布并捕获该操作。你的意思是像$\u POST['action']
?我已经更新了答案,以显示如何在POST数据中发送附加参数。谢谢你回复。不完全是我的意思是我用这种方式。。将操作传递到提交的签出页面的不同元素的switch case语句中。这是修剪过的版本。你的代码有$action=$post['action']代码>基本上就是我说的。