Rails 3 Jquery使select标签不引人注目

时间:2012-05-14 18:42:48

标签: jquery ruby-on-rails ruby-on-rails-3 unobtrusive-javascript

我想让选择更加不引人注目。

我希望当用户选择特定选项时,jquery会自动发送相应的请求,例如 / conroller / action / 1

<form id="some-id" method="post" data-remote="true" action="/templates?locale=uk" >
<select id="user-templates" data-remote="true" name="user-templates">
   <option href="/controller/action/1" data-remote="true" value="1">option-1</option>
   <option href="/controller/action/2" data-remote="true" value="2">option-2</option>
   <option href="/controller/action/3" data-remote="true" value="3">option-3</option>
   <option href="/controller/action/4" data-remote="true" value="4">option-4</option>
</select>
</form>

但目前它根据所选选项发送奇怪的请求,如 http://127.0.0.1:3000/templates?locale=uk&some-id=1

非常感谢。

1 个答案:

答案 0 :(得分:3)

href代码没有option属性。您的选择是:

方法1.

<option onclick="location.href = '/controller/action/1'" 
  data-remote="true" value="1">option-1</option>

方法2. JavaScript:

$("#user-templates").change(function() {
  location.href = "/controller/action/" + $("#user-templates").val();
});

或者,如果您想在后台发送请求:

$("#user-templates").change(function() {
  $.get("/controller/action/" + $("#user-templates").val());
});