Выберите опцию в SELECT с помощью jQuery, который не работает в Firefox - PullRequest
2 голосов
/ 01 ноября 2010

Это странная проблема, она работает в IE, но не в Firefox.

У меня есть элемент управления SELECT, который при получении фокуса извлекает HTML с помощью OPTION s при вызове AJAX.

Обработчик события onfocus содержит этот код:

var selectedValue = $(":input[name='" + fieldName + "']").val();

var dataRetrieved = function(data)
{
    $(":input[name='" + fieldName + "']").html(data);
    $(":input[name='" + fieldName + "']").val(selectedValue);
    alert("data: " + data);
    alert("former value: " + selectedValue);
};

    $.post(url, data, dataRetrieved);

Первое предупреждение показывает:

data: <option value=""/>
<option value="1" >a1</option>
<option value="2" >a2</option>
<option value="3" >a3</option>

И второй:

former value: 3

Так что это должно работать, на самом деле это работает в Internet Explorer (что заставляет меня думать, что я делаю что-то не так с HTML)

Есть идеи, в чем может быть проблема?

Спасибо.

1 Ответ

0 голосов
/ 01 ноября 2010

Селектор ввода не нуждается в двоеточии перед ним. Ваш селектор должен выглядеть так:

$("input[name='" + fieldName + "']")

не

$(":input[name='" + fieldName + "']")

Это мое первое предположение о том, почему оно может не работать.

...