当输入选择值更改时,我试图将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",
})
});
surveys_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 %>");
surveys / _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更改为“问卷/职业”或“问卷/职业”,具体取决于您选择执行的操作。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句