我正在尝试在将表单发送到服务器之前验证它。我尝试了几个J / S插件进行常规验证,但似乎都没有。
我尝试使用jquerymobile查找getJSON
验证方法,但没有看到任何相关内容。正在使用$.getJSON
正确的方法吗?
这是一个小提琴http://jsfiddle.net/Kimbley/kMsXK/2/
谢谢:D
代码在这里:
function mAddBusiness() {
$.getJSON("API.php", {
command: "addBusiness",
bsnName: $("#mBsnName").attr("value"),
bsnCity: $("#mBsnCity").attr("value"),
bsnAddress: $("#mBsnAddress").attr("value"),
bsnMenu: $("#mBsnMenu").attr("value"),
bsnLat: bsnLat,
bsnLong: bsnLong
},
function () {
$("#mBsnName").attr("value", "");
$("#mBsnCity").attr("value", "");
$("#mBsnAddress").attr("value", "");
$("#mBsnMenu").attr("value", "");
alert("Business was added successfully ");
}
);
}
答案 0 :(得分:0)
在mAddBusiness()
函数中,您可以在发送AJAX请求之前进行验证。类似的东西:
function mAddBusiness() {
if ($("#mBsnName").val() !== '') {
$.getJSON("API.php", {
command: "addBusiness",
bsnName: $("#mBsnName").val(),
bsnCity: $("#mBsnCity").val(),
bsnAddress: $("#mBsnAddress").val(),
bsnMenu: $("#mBsnMenu").val(),
bsnLat: bsnLat,
bsnLong: bsnLong
},
function () {
$("#mBsnName").val("");
$("#mBsnCity").val("");
$("#mBsnAddress").val("");
$("#mBsnMenu").val("");
alert("Business was added successfully ");
}
);
} else {
alert('Please enter a business name.');
}
}
请注意,您必须将data-ajax="false"
属性添加到相关的<form>
标记中,以便jQuery Mobile不会尝试自行提交表单。
另外,请注意$('input').attr('value')
不会返回输入的当前值,它会在用户有机会输入任何内容之前返回初始值。要获取表单输入的当前值,请使用.val()
:http://api.jquery.com/val