【发布时间】:2014-05-15 15:20:37
【问题描述】:
我创建了一个包含多个输入的表单,我需要从输入中提取这些值并使用 ajax GET 提交给 API。我在构建 ajax 调用以及验证调用是否成功时遇到问题。我已经搜索并看到“GET”的结构有几种不同的方式,需要知道哪种方式合适/何时使用不同的结构。
下面是我的表格
<form id="target" method="GET" enctype="multipart/form-data" >
<p>First Name: <input class="field" type="text" name="firstName" id="firstname" required></p>
<p>Last Name: <input class="field" type="text" name="lastName" id="lastname" required> </p>
<p>Email: <input class="field" type="email" name="email" id="email" required></p>
<p>Zip Code:<input class="field" type="number" name="zip" id="zip" required></p>
<p class="small"><input type="checkbox" id="privacy" name="privacy" value="Agree" required>I certify that I am a U.S. resident over the age of 18, and I agree to the Privacy Policy</p>
这是我的 jquery 将表单值分配给变量和 ajax 调用
$(document.ready(function(){ ............
$('#target').submit(function(event) {
// get the form data
var firstName = $('input[name=firstName]').val();
var lastName = $('input[name=lastName]').val();
var email = $('input[name=email]').val();
var zip = $('input[name=zip]').val();
// process the form
$.ajax({
type : 'GET',
url : 'http://test.XXXXXXX.com/x/x/x/x/x/x/.action?source=182081&firstName='+firstName+'&lastName='+lastName+'&email='+email+'&zip='+zip,
dataType : 'json',
success: function(data){
alert('successful');
}
})
.done(function(data) {
console.log(data);
});
event.preventDefault();
$('#banner-expanded').hide();
$('#container1').hide();
$('#thankyou').show();
});
我有两个主要问题..
1) ajax 调用的结构是否正确?我应该把 URL 和数据像这样分解吗?
url : 'http://test.XXXXXXX.com/api/event/form/optinNational.action?source=182081&
data : firstName='+firstName+'&lastName='+lastName+'&email='+email+'&zip='+zip,
2)除了我放的“alert”和“console.log”,还有其他方法可以查看调用是否成功吗?
我在这里创建了一个 jsfiddle http://jsfiddle.net/33snB/5/
提前致谢
【问题讨论】:
-
你好,确保在你的 fiddle ajax 调用中去掉真实的域!
-
谢谢大卫,感激不尽
标签: jquery ajax forms get form-submit