我有一个像这样的代码片段。当我提交它时显示警告按钮和ajax函数调用。我如何防止。我有一个id = id1的文本框。我只有在文本框中有值时才需要调用ajax
我在同一页面上还有另一个按钮,所以我需要在该按钮内调用常用的验证功能。所以我写了一个常用功能。
$( document ).ready(function() {
function validate() {
if($('#id1').val=='') {
alert('enter a value');
return false;
}
return true;
}
$('#button').click(function() {
validate();
$.ajax...code goes here
});
});
答案 0 :(得分:1)
如果无效,则从点击处理程序返回,而不执行ajax调用。
在你的情况下,你正在调用validate方法,但是你没有对从它返回的值做任何事情。因此,如果false
然后从点击处理程序返回
$(document).ready(function () {
function validate() {
if ($('#id1').val() == '') {
alert('enter a value');
return false;
}
return true;
}
$('#button').click(function () {
if (!validate()) {
return;
}
$.ajax...code goes here
});
});
答案 1 :(得分:0)
使你的函数不受jquery函数的影响,使其可以在其他地方重用。
$( document ).ready(function() {
$('#button').click(function() {
var isValid = validate();
if(isValid){
$.ajax...code goes here
}
});
});
var validate = function() {
if($('#id1').val=='') {
alert('enter a value');
return false;
}
return true;
}
返回复选框的有效性,如果为true,则触发ajax请求。