У мене є віджет dijit.form.Select. Вона прив'язана до сховища даних, якщо це важливо. Все, що я хочу зробити, це програмно встановити його значення. Я можу отримати його значення, використовуючи myWidget.attr("value")
але якщо я намагаюся це зробити myWidget.attr("value", 5)
наприклад (де 5 - це одне з дійсних значень), все, що потрібно, - це скинути віджет, щоб вибрати перший варіант, незалежно від того, яке значення я надаю йому.
Це, здається, помилка, і немає ніяких тестів або документації, які показують, як виконати те, що я хочу.
Я використовую Dojo 1.4.0. Зауважте, що dijit.form.Select - це нове ім'я для dojox.form.DropDownSelect.
edit: Я навіть намагався скинути віджет з усіма новими опціями, але він ігнорує опцію, яка є selected = true
і просто вибирає перший варіант. Але все ж має бути шлях.
Відповіді:
15 для відповіді № 1Навіть якщо ваші значення ints, якщо ви встановите ціле до рядка, то це буде працювати.
dijit.byId( "my_select" ).attr( "value", String( 5 ) );
11 для відповіді № 2
Виявляється, що це помилка - якщо значення опції не є "рядком", воно не буде працювати (мої цілі).
2 для відповіді № 3
Відгук мого коментаря: Тут є тестова сторінка: архів доджо з якими ви можете зіткнутися. Використовуючи fire-bug, я успішно використовував dijit.byId ("s9"). Attr ("value", "CO") на цій сторінці. Це встановить "вибір на основі магазину" на цій сторінці.
Але, як ви сказали, я встановив його, використовуючи рядок, і ви використовували цілі числа, тому я не бачив помилку.