打开下拉列表时如何触发事件?

时间:2018-03-03 09:07:09

标签: javascript jquery html

当我们打开它时,我想触发一个事件来刷新下拉列表的所有选项。当我们关闭下拉列表或选择其中的任何选项时,请确保该事件不会被触发。

我正在使用以下html代码进行下拉列表。

<select id="SelectedNic" class="dropdown" name="SelectedNic" type="text">
    <option value="">Select</option>
    <option value="A">B</option>
    <option value=C">D</option>
 </select>

有人能提出正确的做法吗?我正在使用jquery。

3 个答案:

答案 0 :(得分:1)

尝试同时使用change和keydown。

 $('#SelectedNic').on('change keydown', function () {
     RegisterPanelChangeHandler();
 });

答案 1 :(得分:0)

只需在选择框的focus上使用功能调用即可。 click事件即使关闭也会被解雇。

<select onFocus="myFunction()">
    <option value="">Select</option>
    <option value="A">B</option>
    <option value=C">D</option>
 </select>

答案 2 :(得分:0)

Try using val() to change to the value and  trigger() to manually fire the event.

必须在触发器之前声明change事件处理程序。

&#13;
&#13;
$('#SelectedNic').change(function(){
  var data= $(this).val();
  alert(data);            
});

$('#SelectedNic')
    .val('A')
    .trigger('change');
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>

<select id="SelectedNic" class="dropdown" name="SelectedNic" type="text">
    <option value="">Select</option>
    <option value="A">B</option>
    <option value="C">D</option>
 </select>
&#13;
&#13;
&#13;