表单验证成功完成后,一直不执行$.ajax的post请求

等待一个人 2017-12-06 04:50:51
$(document).ready(function() {
var projectType, username,phonenumber;
$('#tijiao').click(function(){
// console.log(1111);
projectType = $('#projectType').val();
username = $('#username').val();
phonenumber = $('#phonenumber').val();
if(!jiaoyan()) {
return ;
}
var data = {
'projectType': projectType,
'industry': $('#industry').val(),
'projectCyc': $('#projectCyc').val(),
'name': username,
'phone': phonenumber,
'projectDes': $('#projectDes').html(),
'budget': $('#budget').val()
};
// console.log(2222);
$.ajax({
'method':'post',
'url': 'http://115.29.172.38:8083/out/out/add',
'data': data,
success: function(result) {
console.log(result);
alert("恭喜你提交成功");
$("input[type=reset]").trigger("click");//触发reset
},
error: function() {
alert("提交失败,请重新输入");
}
});
})

function jiaoyan() {
if (!checkProjectType()) {
return;
}
if (!checkName()) {
return;
}
if (!checkMobile()) {
return;
}
}
function checkProjectType() {
// console.log(projectType);
if (!projectType) {
alert("项目类型不能为空");
return false;
}
return true;
console.log(2222);
}

function checkName() {
var result = true;
if (!username) {
alert("姓名不能为空");
result = false;
}else{
var chineseReg = /^[\u4E00-\u9FA5]{2,4}$/;
// console.log(document.myform.username.value);
if (!chineseReg.test(document.myform.username.value)) {
alert('用户名称有误,请重填');
document.myform.username.focus();
result = false;
}
}
return result;
console.log(3333);
}

function checkMobile() {
var result = true;
if (!phonenumber) {
alert("手机号不能为空");
result = false;
}else{
//var phoneNumReg = /^1[0-9]{10}$/;
var Reg = /^1[3|4|5|7|8]\d{9}$/;
<!--表示以1开头,第二位可能是3/4/5/7/8等的任意一个,在加上后面的\d表示数字[0-9]的9位,总共加起来11位结束。-->
// console.log(document.myform.phonenumber.value);
// console.log(phonenumber);
}if (!Reg.test(phonenumber)){
alert('手机号码有误,请重填,手机号码11位数字');
document.myform.phonenumber.focus();
result = false;
}else {
// console.log("输出手机号码正确");
console.log(4444);
}
return result;
}
});
...全文
1164 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
wangjh100 2018-03-08
  • 打赏
  • 举报
回复
zhicidxue
licip 2018-02-28
  • 打赏
  • 举报
回复
我觉得你的代码有这几个方面的问题 1,jiaoyan()方法要有返回值,如果验证没有通过就返回false,如果有通过则返回true 2,你用的ajax的提交方式,指定用get还是post时,是用type:"post"或type:"get",不是用method的。 3,你的数据是json的形式,你应该在ajax方法调用时指定一个数据的类型 dataType:"json"
zxy_小白 2018-02-27
  • 打赏
  • 举报
回复
我上面写的有个貌似也有错,应该是这样(result为后台map绑定的key) success: function(data) { console.log(data.result); alert("恭喜你提交成功"); $("input[type=reset]").trigger("click");//触发reset },
zxy_小白 2018-02-27
  • 打赏
  • 举报
回复
类型没引号,值有引号,应该是这样 $.ajax({ type:'post', url: 'http://115.29.172.38:8083/out/out/add', data: data, dataType:'json', success: function(result) { console.log(result); alert("恭喜你提交成功"); $("input[type=reset]").trigger("click");//触发reset }, error: function() { alert("提交失败,请重新输入"); } });
无聊的上午 2018-01-30
  • 打赏
  • 举报
回复
你还可以尝试F12 断点测试 一步一步看哪一行出错了 或者将ajax提出出来单独写个测试,只测试ajax,如果ajax没问题,说明你前面的额逻辑有问题,根本没执行到ajax就出去了
无聊的上午 2018-01-30
  • 打赏
  • 举报
回复
跟method没多大关系,默认是get,ajax里面的参数注意观察是个json,jquery在解析时如果没发现type就会默认使用内置的参数,如果写了它没有的参数也不会有影响,楼主你是调用别人的接口还是自己的工程,如果是后者请写工程路径而不是访问路径,如果是前者,在失败函数中加参数msg,并打印msg
  • 打赏
  • 举报
回复
好像你ajax有问题 $.ajax({ ulr:serverUrl, type:'post', dataType:'json', data:'传到后台的json格式参数', success:function(data){ 后台用map传值就行 } })
Go 旅城通票 2017-12-11
  • 打赏
  • 举报
回复
tijiao按钮是什么,放在表单中的submit会把表单提交了

Web开发学习资料推荐
ajax对象属性withCredentials
通过Access-Control-Allow-Origin控制允许ajax跨域请求的域名
zk_Kang 2017-12-07
  • 打赏
  • 举报
回复
ajax是有method的么,,我记得好像是type:‘post’, 大体上应该是这样, $.ajax({ beforeSend: function(xhr) { xhr.setRequestHeader('Authorization', 'Bearer ' + $.session.get("token")); }, url: _server + _url, type: "post", contentType: 'application/json;charset=utf-8', dataType: "json", data: JSON.stringify(_data), success: function(er) { alert(); }, async: true, error: function(er) { alert('错误:' + JSON.stringify(er)); } });
等待一个人 2017-12-06
  • 打赏
  • 举报
回复
麻烦大神们看下这个表单最终的提交过程总是失败,咋回事啊?

52,797

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 Ajax
社区管理员
  • Ajax
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧