【发布时间】:2012-02-19 17:48:57
【问题描述】:
我有一个使用 scriptaculous 表单验证的表单,但我使用的是 jquery ajax。在我添加 ajax 之前,表单验证工作正常。一旦我添加了 ajax,就像表单不再验证一样。 ajax 只是在没有验证的情况下汇总表单。就像验证只是被ajax绕过一样。
<script type="text/javascript">
jQuery('form').delay(3000).submit(function() {
string = jQuery("form").serializeArray();
jQuery.ajax({
type: "POST",
url: "../script_insert.php",
data: string,
dataType: "html",
success: function(html){
jQuery('#Right_Content').hide().html(html).fadeIn("slow");;
}
})
return false;
});
</script>
但是当我从页面中删除 ajax 时,它工作正常。页面验证。谁能告诉我如何确保在 ajax 提交之前进行表单验证。我尝试了 jquery 延迟,但这也不起作用。谢谢。
【问题讨论】:
-
仅供参考,您只需要编写一次长的
jQuery:(function($){ /* your code */ })(jQuery);- 在该函数中您放置您的代码并改用$。如果您需要$访问例如原型,你至少可以为 jQuery 使用$j- 可读性更高,编写更少。 -
谢谢。我第一次同时使用 jquery 和 scriptaculous,所以仍在学习有关冲突的规则。谢谢。
-
我的建议:扔掉原型/scriptaculous。你能想象到的几乎所有东西都可用于 jQuery。对于验证,例如有 bassistance.de/jquery-plugins/jquery-plugin-validation。
-
@ThiefMaster 我没有使用低音炮的唯一原因是因为我没有得到它来验证模糊。你知道如何让它验证模糊,而不仅仅是提交吗?我很想保留 jquery 的所有内容。谢谢。
标签: php jquery ajax scriptaculous