根据选项

时间:2018-03-18 18:52:56

标签: jquery html

HTML

  <select class="form-control input-lg" id="r" name="r">
    <option data-action="/test1">Test1</option>
    <option data-action="/test2">Test2</option>
    <option data-action="/test3">Test3</option>
    <option data-action="/test4">Test4</option>
  </select>

的jQuery

$('#r').change(function() {
    $("form").attr("action", +$(this).attr("data-action"));
});

问题

无论选择哪个选项,表单都会提交给/NaN.php。我不确定这个页面是什么,但网站上没有这样的页面。

1 个答案:

答案 0 :(得分:2)

因为您试图获得data-action的{​​{1}},而不是所选的select

option

另请注意,您假设var form = $("form"); form.attr("action", form.attr('action')+$(this).children(':selected').attr("data-action")); 会将值附加到基本操作;仅在设置数值时起作用,例如CSS属性,甚至是新属性值的一部分(它是特定于jQuery的语法):

+

Fiddle