我有一个运行良好的 jQuery ajax 调用,直到我添加了表单验证。现在验证有效,但 ajax 调用无效,虽然我没有碰过它并且发送的参数似乎没问题。
jQuery代码是:
$j('#leapYearBtn').click(function()
{
$j('td#calcResMsg').html('');
$j('#leapYearForm').validate({
errorPlacement: function(error, element){
error.appendTo(element.parent('td').next('td'));
}
});
if($j('#leapYearForm').validate().element("#leap_year") == true)
{
var fctSelect = 2;
var year = $j("#leap_year").attr("value");
alert(fctSelect);
$j.ajax({
url: "ajax/clcDates.php",
type: "POST",
data: {fctSelect: 2, yr: year},
success: function(output){
$j('td#calcResMsg').text(output);
}});
}
});
HTML 表单:
<form id="leapYearForm">
<table>
<tr>
<td>Enter year</td>
<td>
<input class="required positiveNumber" type="text" name="leap_year"
id="leap_year" value="" />
</td>
<td class="validatorErrMsg"></td>
<td id="calcResMsg" class="calc_resMsg">/td>
</tr>
<tr>
<td> </td>
<td>
<button id="leapYearBtn">Check</button>
</td>
</tr>
</table>
</form>
添加验证时,我既没有更改 php 函数也没有更改 ajax 调用,但它不再起作用。有人可以帮我找出原因吗?
我怀疑这与我必须将表格包装在一个表格中的事实有关,这可能会以某种方式影响行为并导致甚至没有进行 ajax 调用。
非常感谢