下拉列表里面的表单....如何触发没有按钮的动作?

时间:2012-10-08 21:05:37

标签: php html

<form id="form1" name="form1" method="post" action="foo.php">

  sort by:
  <select>
  <option name="date">sort by date</option>
  <option name="name">sort by name</option>
  <option name="price">sort by price</option>
  </select>

</form>

我想要的是,当我选择一个选项时,表单中的操作会自动执行?所以简而言之 我选择的将通过$ _POST发送到foo.php。我不想要输入按钮来执行操作。

我需要Javascript来实现这一目标吗? 你能告诉我代码吗? 如果它需要javascript那么

3 个答案:

答案 0 :(得分:1)

这将需要JavaScript,但如果你想使用jQuery,那么这很容易。使用jQuery,它将是:

$('#form1 select').on('change', function() {
  $('#form1').submit();
});

在JavaScript中,您绑定了select元素的onChange事件。一种方法是:

<select onChange="document.form1.submit()">

答案 1 :(得分:1)

你需要javascript。

虽然您应该使用unobtrusive javascript,但基本代码如下所示:

<select onChange="document.forms['form1'].submit();">

您将事件处理程序附加到change事件并让它提交表单。

答案 2 :(得分:0)

最简单的方法是使用javascript直接使用select元素。活动正在改变。

 <select onchange="javascript:document.form1.submit();">

您还可以使用基于jQuery的表单。从http://jquery.com/下载jQuery javascript并将其包含在HTML中。之后,使用:

 <select id="sort">

而且,在你的内心:

 $(document).ready(function(){
           $("#sort").change(function() {
                    $(this).parent().submit();
           });
 });