在输入数据后立即验证输入(表单)数据的最佳方法是什么?
我的想法是在输入旁边放置一个DIV,这个div是我们会看到一条消息,说明数据是否有效,例如:
Your name:
<input type="text">
<div id="data-validation"></div>
<script>
$("input").change(function(){
$("#data-validation").load("data-validation.php?input="+$(this).val());
});
</script>
//data-validation.php
<?php
$input = $_GET["input"];
if(strlen($input) < 3)
echo "Name must have at least 3 characters.";
?>
PHP负责验证和显示数据。
我担心有更好的方法可以做到这一点,我想知道最好的方法是什么。
答案 0 :(得分:2)
绝对!
您可以从JavaScript端执行大部分字符串检查,以防止对服务器进行不必要的调用。您仍然保留PHP检查,但现在要将它们复制到JavaScript端,例如:
$("#data-validation").change(function(){
if($(this).val().length >= 3) {
$(this).load("data-validation.php?input="+$(this).val());
} else {
alert("Name must have at least 3 characters.");
}
});
如果您有多个检查,而不是检查长度,请检查在JavaScript端执行一系列任务的函数。你想确保你的PHP做同样的事情,因为浏览器可以很容易地绕过JavaScript。您希望通过减少对服务器的调用来优化,并利用更多本地资源。
答案 1 :(得分:1)
我强烈建议您使用jQuery Validate仍然需要在php端验证,但这将为您节省大量UI / jQuery方面的工作