Изменить выберите при использовании кликов по таблице - PullRequest
1 голос
/ 02 апреля 2012

Мне нужно изменить выбранное значение в выпадающем списке.

по умолчанию оно выбрано для VIC, но когда я щелкаю по адресу в NSW, я бы хотел, чтобы в раскрывающемся списке было выбрано NSW, единственная проблема - значения 1-7, а не название штата. .

Я попробовал следующее

$ ( "выбрать") Val ( 'NSW') изменить ();..

и многие другие, включая триггеры и многое другое

Ответы [ 2 ]

1 голос
/ 02 апреля 2012

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

function setSelectedIndexByTextValue(comboName, comboValue) {
    var tComboName = document.getElementById(comboName);
    for (i = 0; i < tComboName.options.length; i++) {
        if (parseInt(tComboName.options[i].text) == comboValue) {
            tComboName.options[i].selected = true;
            break;
        }
    }
}
0 голосов
/ 02 апреля 2012

Хорошо, я предполагаю, что у вас есть HTML, который выглядит так:

Please select a state:
<ul>
    <li>New York</li>
    <li>Pennsylvania</li>
    <li>Ohio</li>
    <li>California</li>
    <li>Washington</li>
    <li>Alaska</li>
    <li>Hawaii</li>
</ul>

<select name="state">
    <option value="1">New York</option>
    <option value="2">Pennsylvania</option>
    <option value="3">Ohio</option>
    <option value="4">California</option>
    <option value="5">Washington</option>
    <option value="6">Alaska</option>
    <option value="7">Hawaii</option>
</select>

Когда вы нажимаете на Калифорния li, вы хотите выбрать четвертый вариант? Достаточно просто: просто создайте простой массив, который сопоставляет индексы с именами:

var map = [null, "New York", "Pennsylvania", "Ohio", "California",
          "Washington", "Alaska", "Hawaii"];

Затем используйте функцию $.inArray, чтобы найти индекс, соответствующий состоянию:

var index = $.inArray($(this).html(), map);

Затем установите для выбора опцию с индексом, который вы только что нашли:

$("select").val(index);

jsFiddle

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...