Я делает Ruby On Rails 3.0.3 приложение с JQuery 1.4.4 и JQuery UJS rails.js (https://github.com/rails/jquery-ujs)Standart Удалить ссылку не работает с Rails3 + JQuery UJS
Я подмости генерируемый модель/вид/контроллер - Документ, в котором я должен удалить ссылку на приложение/просмотров/документы/index.html.haml файла:
link_to "delete", document, :confirm => "Are you sure?", :method => :delete
Это создает этот HTML:
<a href="/documents/1" data-confirm="Are you sure?" data-method="delete" rel="nofollow">Destroy</a>
Что кажется очень ОК.
Когда я нажимаю эту «Уничтожить» ссылку, а затем я вижу браузер подтвердить() и когда я нажимаю Отмена я ожидаю не произойдет ничего.
НО
Удаление функциональности происходит и документ удаляется.
Имеет ли кто-нибудь такую же проблему, или я делаю что-то неправильно?
В настоящее время я выкопал этот далеко:
Я смотрел на jquery-ujs rails.js и есть два .live() событий, подключенные к той же якорем:
1) $ ('а [data-confirm], input [data-confirm] '). live (' click ', function() {...}
2) $ (' a [data-method]: not ([data- удаленный]) '). live (' click ', function (e) {...}
Первый концерт() выполняет return false; который, как я понимаю, должен тормозить всю цепочку выполнения, но это не так. Второй live() по-прежнему выполняется, и этот второй live() - это форма, сгенерированная и отправленная для уничтожения действия.
Yeap, что есть истина. Важна последовательность включения. Я столкнулся с подобными проблемами. – oskarae 2011-07-07 07:38:33