繁体   English   中英

带有jQuery / Rails的AJAX更改功能请求

[英]AJAX Request on change function with jQuery/Rails

当输入选择值更改时,我试图将Rails部分化。 目标是用位于部分中的选项填充空的选择输入。

现在,控制台在说GET http://localhost:3000/occupation 404 (Not Found)

HTML

<select class="occupation-primary">
    <option value="1">Occupation 1</option>
    <option value="2">Occupation 2</option>
</select>

<select id="occupation-secondary">

</select>

JS

$('.occupation-primary').change(function() {
    $.ajax({
        url: "occupation",
        type: "GET",
    })
});

questionnaires_controller.rb

def occupation
    respond_to do |format|
        format.js
    end
end

问卷/ occupation.js.erb

$('#occupation-secondary').html("<%= escape_javascript(render(partial: 'questionnaires/options')).html_safe %>");

问卷/ _options.html.erb

<option value="1">Option 1</option>
<option value="2">Option 2</option>

的routes.rb

get "questionnaires/occupation" => "questionnaires#occupation", as: :occupation

在您的路线rb中更改此设置,以绕过“显示”错误:

get "questionnaire/occupation" => "questionnaires#occupation", as: :occupation #skip the 's'

它可以在没有“ s”的情况下工作

http://localhost:3000/questionnaire/occupation

否则,如果您正在使用

resources :questionnaires 

在rb路线中,您需要说:except =>:show

resources :questionnaires, :except => :show

不要忘记将ajax调用中的URL更改为“问卷/职业”或“问卷/职业”,具体取决于您选择执行的操作。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM