我正在尝试进行表单验证,但是一旦我将表单粘贴到ng-view并使用ngroute,DOM元素会稍微延迟,我的脚本在运行时无法找到该元素。
我不想做像setInterval
我有这样的事情:
validateform.ready = function() {
$valForm = $('.ui.basic.login-register.segment .ui.form.segment');
$.fn.form.settings.defaults = {
firstName: {
identifier : 'first_name',
rules: [
{
type : 'empty',
prompt : 'Please enter your first name'
}
]
},
... // More validation code
$valForm
.form({}, {
inline : true,
on: 'blur'
});
$('.ui.dropdown')
.dropdown();
$('.ui.accordion')
.accordion();
};
然后我拨打$(document).ready(validateform.ready);
,但显然在ng-view
正在播放时太早了。
我的理解是因为ready
事件发生,然后Angular执行其路由并注入ng-view
。
如何在元素存在后确保加载此代码?