Как мне «выбрать» сценарий jquery для работы в asp.net

#javascript #asp.net #jquery-chosen

Вопрос:

У меня есть этот код:

 <script type="text/javascript" src="../Scripts/chosen.min.js" ></script>

[...]

<asp:ListBox class="chosen-select" ID="lbCategory" runat="server" AutoPostBack="true" DataSourceID="SqlDataSourceDropDownListCategory" 
SelectionMode="Multiple" Width="200px" DataTextField="Name" DataValueField="IdCategory"></asp:ListBox>

<script>
    $(".chosen-select").chosen();
</script>
 

У меня есть js в пути, который я написал, и сценарий не работает, я пытался искать, но все, что я нашел, не исправляет этого, может кто-нибудь помочь, пожалуйста.

Ответ №1:

То, что я вижу как проблемы.

  1. В файлах этого нет chosen.min.js . Есть chosen.jquery.min.js свои и некоторые другие.
  2. Это AutoPostBack="true" не сработает, если вы используете выбранный плагин, потому что плагин перепроектирует исходный элемент управления, который теперь скрыт. Кроме того, вы используете SelectionMode="Multiple" так, что если автоматическая обратная запись работает при каждом щелчке мыши, у вас будет обратная запись, это не лучший опыт для Интернета.
  3. Вы не включаете jQuery library то, что выбранному необходимо для работы.
  4. Предпочитаю CssClass и не class хочу . И то и другое работает, но для asp.net управление CssClass является правильным, чтобы избежать ошибок.

Как найти ошибки. Откройте инструменты отладки браузера, щелкнув правой кнопкой мыши на странице, в меню «Открыть» выберите Inspect , а затем откройте Console и посмотрите, какие ошибки у вас есть, и извлеките их оттуда.

Ссылка

Выбранная документация
Выбранные загрузки

Рабочий Пример

Я создаю минимальный пример, тестирую его и работаю.

 <script src="https://code.jquery.com/jquery-3.6.0.min.js" integrity="sha256-/xUj 3OJU5yExlq6GSYGSHk7tPXikynS7ogEvDej/m4=" crossorigin="anonymous"></script>
<script type="text/javascript" src="/js/jQuery/Chosen/chosen.jquery.js " ></script>
<link rel="stylesheet" href="/js/jQuery/Chosen/chosen.css" />               

<asp:ListBox ID="lstCategoryType" runat="server" CssClass="chosen-select"  SelectionMode="Multiple" Width="200px">
    <asp:ListItem Text="Option 1" Value="1"></asp:ListItem>
    <asp:ListItem Text="Option 2" Value="2"></asp:ListItem>
    <asp:ListItem Text="Option 3" Value="3"></asp:ListItem>
    <asp:ListItem Text="Option 4" Value="4"></asp:ListItem>
</asp:ListBox>

<script>
    jQuery(document).ready(function(){
        jQuery(".chosen-select").chosen();    
    });
</script>
 

Комментарии:

1. Спасибо, я все это посмотрю