MonoRail: как убрать проверку прототипа?

Я поддерживаю приложение с монорельсом, и мы решили изменить метод проверки для Jquery. Пока все хорошо, но... проблема у меня в том, что я не могу избавиться от ссылки на предыдущий метод проверки, который является прототипом.

Дело в том, что Javascript всегда помещается после тега формы, которые я создаю.

<script type="text/javascript">
if (!window.prototypeValidators) prototypeValidators = $A([]);
var validator = new Validation('form1', {onSubmit:true, focusOnError:true, stopOnFirst:false, immediate:true, useTitles:true});
prototypeValidators['form1'] = validator;
</script>

Я не смог найти четкую документацию о методах проверки монорельсовой дороги.

И это приводит к некоторым ошибкам в браузере, например:

$A is not defined
[Break On This Error] if (!window.prototypeValidators) prototypeValidators = $A([]); 

Будем весьма благодарны за любую помощь или указание в правильном направлении для документации об этом или о том, как удалить этот вид проверки из монорельса.

заранее спасибо

MetalGeorge

PS. я должен сказать, что я довольно плохо знаком с монорельсом

1 ответ

Решение

Вы можете переключиться на генерацию jQuery (по умолчанию, как вы уже заметили, Prototype) с помощью свойства JSGeneratorConfiguration в конфигурации Monorail. См. http://hammett.castleproject.org/?p=238 для справки.

Или вы можете полностью избавиться от создания проверки формы, заменив:

$Form.FormTag("%{action='LoginAction'}")
...
$Form.EndFormTag()

с тегом обычной формы:

<form method="post" action="$Url.For("%{action='LoginAction'}")">
...
</form>
Другие вопросы по тегам