如何输入有多个事件?

时间:2017-11-13 08:34:37

标签: javascript jquery

我的表单中有一个按钮和一个选择。该按钮具有onclick事件,而select具有onchange事件。如何进行选择同时包含onclickonchange事件?

这是剧本:

$('#i_btn').on('click', function(){
     alert('Event 1');
});

$('#i_sel').on('change', function(){
     alert('Event 2');
});

更改选择后,应该alert('Event 1'); alert('Event 2');。我不想重写onclick

中的onchange代码

4 个答案:

答案 0 :(得分:2)

您可以在#i_sel

的更改事件中触发#i_btn的click事件
$('#i_btn').on('click', function(){
     alert('Event 1');
});

$('#i_sel').on('change', function(){
     alert('Event 2');
     $("#i_btn").trigger("click");
});

答案 1 :(得分:2)

将您的活动编写为单独的功能:

$('#i_btn').on('click', event1);
$('#i_sel')
     .on('change', event1)
     .on('change', event2);

function event1(){
     alert('Event 1');
}

function event2(){
     alert('Event 2');
}

答案 2 :(得分:0)

您可以在选择更改时使用触发器,确保在更改前单击已定义按钮



$('#btn1').on('click', function(){
     alert('Clicked');
});

$('#select1').on('change', function(){
     alert('Changed');
     $("#btn1").trigger("click");
});

<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>

<select id="select1">
  <option value="volvo">Volvo</option>
  <option value="saab">Saab</option>
  <option value="mercedes">Mercedes</option>
  <option value="audi">Audi</option>
</select>
<button id="btn1">click</button>
&#13;
&#13;
&#13;

答案 3 :(得分:0)

您也可以简单地将事件处理程序添加到元素...

$('#i_btn, #i_sel').on('click', function(){
     alert('Event 1');
});

$('#i_sel').on('change', function(){
     alert('Event 2');
});

除非你真的需要点击按钮才能触发......