определить, выбран ли раскрывающийся список или нет - PullRequest
0 голосов
/ 03 августа 2010

Попытка отправить постданные через ajax
Код, который пробовал до сих пор,

 var $inputs = $('#myform :input');
 var values = {};
 $inputs.each(function(i,field) {


                      if($(this).is(':text'))
                      {
                             //alert("id : " + field.id + " value : "+ field.value);
                             values[field.id] = field.value
                      }
                      if($(this).is(":radio"))
                      {
                                var v = $(this).attr('checked')
                                if (v == true)
                                {
                                       values[this.name] = $(this).val()
                                       //alert($(this).attr('checked'))
                                }
                      }
                      if($(this).is(":checkbox"))
                      {
                           var v = $(this).attr('checked')
                           if (v == true)
                           {
                               values[this.name] = $(this).val()
                               //alert($(this).attr('checked'))
                           }
                      }
                      alert($(this).is(":hidden"))
                      if($(this).is(":hidden"))
                      {
                           values[field.name] = field.value
                      }
                      //alert("dropdownlist : " + $(this).is('option:selected'));
                      //values[field.id]  = field.value


                });

Работает нормально, но я хочу определить, выбран ли выпадающий список или нет на основе
, мне нужноДобавить values[field.id] = field.value
Есть ли способ узнать о выпадающем списке
Аналогично $(this).is(':checkbox'),$(this).is(':text')
Любая помощь будет полезна

1 Ответ

2 голосов
/ 03 августа 2010

Вы можете проверить, является ли это элементом <select>, например:

$(this).is("select")

Поскольку .is() принимает любой селектор, просто используйте селектор элемента :)

Тем не менее, с общей точки зрения, вы, кажется, воспроизводите встроенную функциональность, взгляните на .serialize() и .serializeArray(), выможете использовать это, чтобы сделать то, что вы уже пытаетесь, например:

$.post(url, $("#myform").serialize());
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...