Невозможно отобразить предупреждение jquery из шаблона dojo
Я работаю с Dojo-1.9.1 и пытаюсь создать шаблонную форму для нашего приложения. Я использую ноти для отображения предупреждения об ошибке, когда проверка формы не удается. Вызов noy работает, когда я непосредственно использую в шаблоне вот так:
<form data-dojo-attach-point="formNode" data-dojo-type="dijit/form/Form"
enctype="application/x-www-form-urlencoded" action=${submitUrl} method="post">
<script type="dojo/on" data-dojo-event="submit">
if(!this.validate()){
noty({
text: '${messages.invalidForm}',
type: 'error',
modal: true,
timeout: 2000, // false, to wait for user click
closeWith: ['click', 'hover'], // ['click', 'button', 'hover']
}); // works
return false;
}
return true;
</script>
<!-- other fields -->
</form>
Однако noty не отображается при создании в методе onSubmit следующим образом:
<form data-dojo-attach-point="formNode" data-dojo-type="dijit/form/Form"
enctype="application/x-www-form-urlencoded" action=${submitUrl} method="post" data-dojo-attach-event="onSubmit:handleSubmit">
</form>
//Within the template.js
handleSubmit: function() {
if(!this.formNode.validate()) {
noty({text:...}); //fails to come up
return false;
}
return true;
}
dojoConfig:
// ... preceding dojo packages
{ name: "jquery", location: "lib", main: "jquery-1.10.2.min" },
{ name: "noty", location: "lib", main: "jquery.noty.packaged.min" }
Это не может появиться в консоли тоже. Я думаю, что я правильно сделал AMD библиотеки, так как он работает в первую очередь. Может ли кто-нибудь указать какие-либо недостающие ссылки в моей реализации. Благодарю.
1 ответ
Отвечая на мой собственный вопрос. Я получил это работает, загрузив ноти как не-AMD-файл:
//Within the template.js
define([..., 'resources/js/lib/jquery.noty.packaged.min.js'], function(...) {
handleSubmit: function() {
if(!this.formNode.validate()) {
noty({text:...}); //fails to come up
return false;
}
return true;
}
})