Добавить правило проверки jQuery для множественного выбора - PullRequest
0 голосов
/ 08 марта 2012

В моем приложении ASP.NET MVC у меня есть View с тегом select с возможностью выбора нескольких опций.

По умолчанию (при загрузке страницы) у меня нет вариантов выбора. В некоторых действиях выбор может быть заполнен опциями, и это прекрасно работает.

Теперь, когда я отправляю форму, я хочу проверить, есть ли у выбора какие-либо опции или нет, поскольку требуется, чтобы у выбора была хотя бы одна опция при отправке формы. Я не хочу проверять, выбраны ли какие-либо опции или нет, просто если у выбора есть какие-либо опции. Это то, что у меня так далеко:

<select multiple="multiple" style="width:200px;" id="PersonnelClasses"
                name="PersonnelClasses"></select>

И jQuery-код:

$("#PersonnelClasses").rules("add", {
    required: true
});

Теперь, как будет выглядеть правило, чтобы проверить, есть ли у select какие-либо элементы в списке? Я не нашел ни одного решения ни в SO, ни в документах jQuery.

Обновление:

Код для добавления параметров в избранное:

this.addPersonnelClass = function () {
        $('#selectablePersonnelClasses :selected').
          each(function (value, item) {
            $('#PersonnelClasses')
              .append($('<option></option>')
              .val(item.value) 
              .html(item.text));
    });
};

1 Ответ

1 голос
/ 08 марта 2012

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

взгляните на следующий код:

<html>
<head>
     <script src="js/jquery.js" type="text/javascript"></script>
      <script type="text/javascript">
            function checkLength(){
                alert($('#PersonnelClasses option').length);
            }
      </script>
</head>
<body>
<form NAME="myform" ACTION="" METHOD="GET">
    <select multiple="multiple" style="width:200px;" id="PersonnelClasses" name="PersonnelClasses">
        <option>bla</option>
        <option>lala</option>
        <option>lolo</option>
        <option>l4</option>
    </select>
    <input type="button" name="mysubmit"  onClick="checkLength()" value="Click" />
</form>
</body>
</html>
  • этот пример проверяет количество опций в select каждый раз, когда вы нажимаете кнопку. (этот клик - действие, выполняемое после загрузки веб-страницы и заполнения пользователем элемента выбора)
  • Не помещайте функцию в функцию document.ready (в противном случае функция не найдена)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...