html表单重置没有触发select onchange

时间:2015-05-13 12:19:09

标签: javascript jquery html forms

我的form字段需要根据我的select进行更改。  但是当我点击reset select重置为默认值时,onchange上的select事件未被触发。无论如何,我可以将其添加到我的javascript中吗?

我正在使用type="reset"

按钮重置
    $('#newHistoryPart select[name="roundType"]').on('change', function (data) 
    {
      $(".answerType").hide();
      selected = $(this).find("option:selected").val();
      roundTypeChange(selected); 
    });

4 个答案:

答案 0 :(得分:5)

从上面的评论中,使用onreset事件代替onchange

$('#yourform').on('reset', function(){
    // do something
});

答案 1 :(得分:5)

您需要做的是,在单击重置按钮时手动触发更改事件。见Fiddle here

$('select').on('change', function () 
{
    alert('on change');
});

$('input[type="reset"]').click(function() {
    $("select").trigger('change');
});`

答案 2 :(得分:0)

你可以使用

$('select[name="roundType"]').prop('selectedIndex',0);

DEMO HERE

答案 3 :(得分:0)

这可以帮助您,用您的活动代码替换警戒线。

JSFiddle

<强> HTML

<select name="opt" onchange="getval(this)">
    <option value="Select" selected disabled>Select</option>
    <option value="op1">Option 1</option>
    <option value="op2">Option 2</option>
</select>

<强>的JavaScript

function getval(sel) {
    if (sel.value == "op1") {
        alert("Option 1 Selected");
    } else if (sel.value == "op2") {
        alert("Option 2 Selected");
    }
    else
    {
        alert("EXCEPTION !");
    }
}