Удаленное заполнение формы в Chrome и Firefox, но не в IE - PullRequest
0 голосов
/ 06 января 2012

Я использую remote_form_for в Ruby on Rails для создания всплывающей формы, которая получает некоторую информацию через AJAX при отправке и возвращает ее на текущую страницу. Все отлично работает в Firefox и Chrome, но не в IE9. Код Ruby выглядит примерно так:

remote_form_for  :quiz_questions,
                 :url => auto_populate_quiz_questions_path(),
                 :update => "quiz_questions",
                 :html => { :id => "auto_pop_questions_form" },
                 :position => "after",
                 :complete => 'toggle_hidden("search_comp", false); update_existing_questions(); ' do |f| %>

При этом получается код HTML и Javascript, который мне подходит, но не работает в IE. Вот HTML и Javascript:

<form 
 action="/cms/quiz_questions/auto_populate" 
 id="auto_pop_questions_form" 
 method="post" 
 onsubmit="new Ajax.Updater(
   'quiz_questions', 
   '/cms/quiz_questions/auto_populate', 
   {
     asynchronous:true, 
     evalScripts:true, 
     insertion:'after', 
     onComplete:function(request){
       toggle_hidden(&quot;search_comp&quot;, false);
       update_existing_questions(); 
     }, 
     parameters:Form.serialize(this)
   }
 ); 
 return false;">

Из того, что я могу сказать, onComplete никогда не запускается в IE9. Почему onComplete срабатывает правильно в Chrome и Firefox, но не в IE9?

1 Ответ

0 голосов
/ 10 января 2012

Проблема здесь была со вставкой, это происходило только тогда, когда там был параметр "вставка". Исправление было обновить Prototype. Я использовал Prototype 1.6.0.1, и простое обновление до 1.6.0.2 устранило проблемы. Более серьезное обновление, вероятно, тоже исправит это.

...