2017-04-26 14 views
0

我想创建一个简单的验证来要求名称(稍后会添加更多的验证)。该应用程序是一个烬应用程序,我们想要使用jquery validation如何正确使用emberjs上的jquery-validation?

我有麻烦只是为了得到一个基本的验证运行。这是我有:

//index.html 
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
<script src="http://ajax.aspnetcdn.com/ajax/jquery.validate/1.8.1/jquery.validate.min.js"></script> 

... 
//body and such// 
... 

<script> 
    $('#salesForm').validate(); 
</script> 

</body> 

一个组件内,说销售形式:

//app/components/sales-form/template.emblem 

form id="salesForm" 
    ... 
    .form-group 
    label Some Sales Info 
     = input type="text" disabled=false value=salesNumber placeholder="Sales Number" class="form-control" required 

    button{action: 'clickNSave'} 
    ... 

这给了我一个编译错误,因为标志并不输入识别required

如何创建一个简单的验证使用jquery-validation在模板上使用emblem的应用程序应用程序?

附加问题,我的验证index.html是否正确,在关闭body标签之前在最后运行验证?如果没有,插入$('#someForm').validate();的最佳方法在哪里?

回答

0

这给了我一个构建错误,因为标志不能识别输入所需。

What about required="required" or required=required?否则,我不知道你应该如何添加使用Ember.js这个属性。

...跑...验证

你是不是 “跑” 验证。你正在初始化你的表单上的jQuery Validate插件。

...在最后,在关闭身体标记之前?如果没有,插入$('#someForm').validate();的最佳方法在哪里?

$('#someForm').validate()干脆被调用内部a DOM ready handler,如果它在顶部,底部,或其他任何地方,只要它被称为您包括jQuery和插件也没关系。

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
<script src="http://ajax.aspnetcdn.com/ajax/jquery.validate/1.8.1/jquery.validate.min.js"></script> 

.... 

<script> 
    $(document).ready(function() { // ensures DOM is fully constructed 
     $('#someForm').validate(); // initialize the plugin on #someForm 
    }); 
</script> 

否则,如果你把head没有一个DOM准备处理时,form尚未呈现在DOM和你的.validate()调用将失败。

如何创建一个简单的验证使用jquery验证在模板上使用emblem的应用程序应用程序?

我看不到您曾将name属性分配给input元素的位置。 jQuery Validate插件mandates that any form element being validated must contain a unique name attribute

= input type="text" name="sales_number" required="required" disabled=false value=salesNumber placeholder="Sales Number" class="form-control" 

参考the documentation以及the SO wiki page对这个插件的正确使用方法的更多信息。