Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ajax/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript Ruby on Rails中的替换html生成TypeError_Javascript_Ajax_Ruby On Rails 3 - Fatal编程技术网

Javascript Ruby on Rails中的替换html生成TypeError

Javascript Ruby on Rails中的替换html生成TypeError,javascript,ajax,ruby-on-rails-3,Javascript,Ajax,Ruby On Rails 3,我遇到了一个类似于但不完全相同的问题。我只是想在这里说出来,以防有人对这种特殊情况有任何见解。我有一系列的选择框,在最后一个选择框被选中之后,我想根据上面的内容用一些文本更新一个text_字段 对于选择框,我的视图中有以下代码(实际上是部分代码): <%= f.collection_select :xyz_id, @xyzs, :id, :display_name, { :prompt => "Select a XYZ..." },

我遇到了一个类似于但不完全相同的问题。我只是想在这里说出来,以防有人对这种特殊情况有任何见解。我有一系列的选择框,在最后一个选择框被选中之后,我想根据上面的内容用一些文本更新一个text_字段

对于选择框,我的视图中有以下代码(实际上是部分代码):

<%= f.collection_select :xyz_id, @xyzs, :id, :display_name,
                        { :prompt => "Select a XYZ..." },
                        { :onchange => "#{remote_function(:url => {:action => "update_text_field"}, 
                                                          :with => "'abc_id='+$('#foo_abc_id').val()")}",
                          :class  => "blah" } %>
最后,
my_partial
如下所示:

<%= text_field_tag :special_info, some_info, :size => 20, :readonly => "readonly" %>

关于这个错误的原因有什么想法吗?

我现在正在工作

经验教训:

  • 在控制器中使用render:partial而不是render:update
  • 使用不引人注目的JS向控制器发出get请求
  • 在表单上使用:remote=>true
  • 当你已经工作了12个多小时的时候,不要在晚上寻找解决方案或做实验
  • 上面的列表看起来确实“足够”,但我不确定其中的所有内容是否都是“必需的”,但我将继续使用上面的列表来处理表单上的所有其他动态输入字段

    <%= text_field_tag :special_info, some_info, :size => 20, :readonly => "readonly" %>
    
    <div id="myDivId"><%= render :partial => 'shared/my_partial', 
               :locals => { :some_info => some_info } %></div>
    
    Element.update("myDivId",
    "<input id=\"special_info\"
    name=\"special_info\"
    readonly=\"readonly\" size=\"20\"
    type=\"text\" value=\"The right text\"
    />");