Как установить значение для элемента формы с помощью mootools - PullRequest
5 голосов
/ 08 июля 2010

У меня есть форма, в которой есть элемент ввода и элемент выбора с множественным выбором. так как я могу установить значение для элемента ввода и выбрать элемент в mootools.

Ответы [ 3 ]

8 голосов
/ 09 июля 2010

в основном - element.get("value"); возвращает значение для всех входов, выделений и текстовых полей, .set("value", value); для их установки (кроме кратных)

сложнее для выбора с несколькими - вышеизложенное возвращает ПЕРВЫЙ выбранныйтолько вам нужно сделать element.getSelected().get("value"), чтобы получить массив значений (.getSelected () сам по себе будет возвращать указатели на фактические option элементы)

и, наконец, для установки нескольких вариантов выбора, толькоЯ могу думать об atm, написав собственный прототип элемента, который проходит через дочерние узлы со значениями, как указано, и .set("selected", "selected")

, дайте мне знать, если вам нужна помощь в написании последнего

3 голосов
/ 08 июля 2010

Для выпадающего списка:

$('idOfSelect').selectedIndex = x;

Для текста:

 $('IdOfInput').value = 'Foo';
2 голосов
/ 30 ноября 2011

Ответ правильный о мультипликаторах, и нужно использовать selectEl.getChildren('option').each(function(option)...

, но даже для одиночного выбора, в IE (я тестирую это в IE9), если в каждой опции нет свойства "value", Mootools завершается ошибкой, т.е. selectEl.set('value', value) не работает. В FF это работает, а в IE это работает, если вы устанавливаете свойство "value" каждого элемента.

Мое решение:

selectEl.getElements('option').each(function(option) {
   option.selected = option.get('value')==value
});

Обратите внимание, что option.get ('value') работает даже в IE, где нет свойства value, Mootools предоставляет параметр text

...