我正在使用jQuery验证插件。我有一个简单的函数,它将一个输入的值复制到另一个输入。
function sameAsShipping() {
$('#billingFirstName').val($('#firstName').val());
}
我想使用valid()方法验证新复制的输入值。如果输入的值不为空,我正在尝试调用valid()方法。
$(document).ready(function(){
$(":input, select").each(function() {
if(!$(this).val() === "")
$(this).valid();
});
});
除了使用jQuery操作输入值外,如果提交了表单并且出现错误,我会回显之前提交的值。我还希望这些字段在加载时验证这些字段,但是,仅当输入中有值时才会验证。
<input type="text" id="billingFirstName" name="billingFirstName" class="required" placeholder="First Name" value="<?php if(isset($_SESSION['firstName'])){echo $_SESSION['firstName'];} ?>">
答案 0 :(得分:0)
无法直接使用javascript选择动态创建的DOM对象。您需要选择在任何DOM操作之前存在的静态元素。
以下是一个例子:
$(document).ready(function(){
$("body :input, select").each(function() {
if(!$(this).val() === "")
$(this).valid();
});
});
body元素是javascript的静态(未创建),因此可以选择。从tehre开始,您可以正常导航到任何元素。你也不需要使用身体。任何静态html元素或由后端编程语言创建的元素都可以使用。
或者你可以使用liveQuery插件来获取jQuery。