2016-03-09 4 views
0

Я занимаюсь разработкой веб-сайта ASP.NET. Я использую выбранный выпадающий список jQuery. Он отлично работал. Вот код ...Reapply выбрано после обратной передачи

<script type="text/javascript"> 
    $(".chzn-select").chosen(); 
    $(".chzn-select-deselect").chosen({ allow_single_deselect: true }); 
</script> 

После того как я добавить UpdatePanel, на постбэка, то DropDownList не работал больше. (Вернулся к стандартным выпадающим спискам.) Я исследовал проблему и, основываясь на своих исследованиях, написал этот код, который не работает.

<script src="https://code.jquery.com/jquery-1.9.1.min.js" type="text/javascript"></script> 
<script> 
    alert("1"); 

    $(".chzn-select").chosen(); 
    $(".chzn-select-deselect").chosen({ allow_single_deselect: true }); 

    $(document).ready(function() { 
     alert("2"); 
     // bind your jQuery events here initially 
     $(".chzn-select").chosen(); 
     $(".chzn-select-deselect").chosen({ allow_single_deselect: true }); 
     alert("3"); 
    }); 

    var prm = Sys.WebForms.PageRequestManager.getInstance(); 

    prm.add_endRequest(function() { 
     alert("4"); 
     // re-bind your jQuery events here 
     $(".chzn-select").chosen(); 
     $(".chzn-select-deselect").chosen({ allow_single_deselect: true }); 
     alert("5"); 
    }); 

    alert("6"); 
</script> 

Пожалуйста, не смейтесь. Я не пишу много jQuery/js, как вы можете видеть. Haha :)

В принципе, я пытался повторить выбранный эффект с вышеуказанным кодом. Но теперь это даже не влияет на начальную загрузку страницы. Не могли бы вы помочь мне в этом вопросе? Благодаря!

ответ

0

1- первый добавить JS скрипт внутри функции

<script type="text/javascript"> 
     function ChosenDropdown() { 
      $(".chzn-select").chosen(); 
      $(".chzn-select").chosen({ allow_single_deselect: true }); 
     } 

    </script> 

2 регистра вы Js скрипт на каждом постбэка используя ScriptManager.registerStartupScript:

protected void Page_Load(object sender, EventArgs e) 
    { 
     ScriptManager.RegisterStartupScript(UpdatePanel1, UpdatePanel1.GetType(), "ChosenD", "ChosenDropdown()", true); 

    } 

Это все ,, привет

Смежные вопросы