How can I reset a form with jQuery chosen plugin?

后端 未结 10 1301
甜味超标
甜味超标 2020-12-04 15:12

I have a bunch of select elements in a form with which I am using the Jquery Chosen plugin. How can I reset the form? The following does not work:



        
相关标签:
10条回答
  • 2020-12-04 15:31

    You'll need to reset the value of the field, then trigger the liszt:updated event on the input to get it to update, ive made a fiddle with a working example here.

    http://jsfiddle.net/VSpa3/3/

    $(".chzn-select").chosen();
    $('a').click(function(){
        $(".chzn-select").val('').trigger("liszt:updated");
    });​
    

    Since the release of chosen v1.0 the trigger is now called 'chosen:updated'. Anyone using this new version needs to trigger the update using

    $(".chosen-select").val('').trigger("chosen:updated");
    
    0 讨论(0)
  • 2020-12-04 15:32
    $("#Your_id").trigger("chosen:updated");
    

    This worked for me

    0 讨论(0)
  • 2020-12-04 15:34

    You could try this:

    $('select').chosen('destroy');  
    
    $('select').prop("selectedIndex", -1);   
    $('select').chosen();
    
    0 讨论(0)
  • 2020-12-04 15:35

    None of the answers here worked for me. Im using chosen select with the multiple attribute. Normal submit form button didnt do the trick either. So i just had a function do this upon click.

    //Gets the selected values
    var selected = [];
        for (var option of document.getElementById('mySelect').options) {
            if (option.selected) {
                selected.push(option.value);
            }
    
        }
    
    //Resets the form
    document.getElementById('form1').reset();
    
    //Chosen values doesnt get reset, so we do this manually
    //Removes the values selected by clicking on the x icon
    $link = $('a.search-choice-close');
                var i;
                for (i = 0; i < selected.length; i++) {
                    $link[i].click();
                }
    
    0 讨论(0)
  • 2020-12-04 15:35

    In jQuery something like this should work

    <input name="Text1" id="something" type="text">
    
    <input type="reset" id="reset_me"/>
    
    
    $("#reset_me").click(function() { 
    $("#something").val("");
    });
    
    0 讨论(0)
  • 2020-12-04 15:36

    None of the previous options work for me. I had to do it like the old school, even using some native javascript, here is the code:

    $('#dllSample option').each(function(){
         $(this)[0].selected = false;   
    });
    $("#dllSample").trigger("chosen:updated");
    
    0 讨论(0)
提交回复
热议问题