Получить текст Select That Runat = "Сервер" - PullRequest
0 голосов
/ 14 марта 2011
   <select   id="Select1">
         <option>1</option>
         <option>2</option>
         <option>3</option>
  </select>

alert($("#Select1").val());

этот код является верным и возвращает текущее значение.

НО

   <select runat="server"   id="Select1">
         <option></option>
  </select>

function parseXmlQuestion(xml)
{

   $(xml).find("Question").each(function()
  { 
     var value=$(this).find('Text').text()
     $('#<%=Select1.ClientID %>').
      append($("<option></option>").
      attr("value",value).
      text(value)); 
   });

}

alert( $('#<%=Select1.ClientID %>').val());
alert( $('#<%=Select1.ClientID %> option:selected').val());

или

alert( $('#<%=Select1.ClientID %>').text());
alert( $('#<%=Select1.ClientID %> option:selected').val());

или

alert( $('#<%=Select1.ClientID %>').html());
alert( $('#<%=Select1.ClientID %> option:selected').val());

вернуть значение null или undefined.

Ответы [ 2 ]

0 голосов
/ 14 марта 2011

Хорошо, вы немного странны, и вы помогаете нам меньше каждый раз, когда отвечаете ...

Вот что вы должны сделать.

  1. проверить, что это возвращает правильный идентификатор.<%=Select1.ClientID %>, который должен быть Select1
  2. проверить ваш xml, то есть правильно (используйте json, желательно гораздо проще), включая заглавные буквы ваших тегов xml.так что либо console.log(value), либо alert(value), если вы еще не эволюционировали:)
  3. parseXmlQuestion() следует вызывать где-то на странице, в противном случае вы просто застрелили сидящую утку или не сказали ейбеги другими словами
0 голосов
/ 14 марта 2011

вам нужно удалить <option></option> из

   <select runat="server"   id="Select1">
         <option></option> <-- your values get added after this so probably the null is coming from here
  </select>

должно быть как

   <select runat="server"   id="Select1"></select>
...