Профессор, я глубоко признателен Вам за помощь. Вы не могли бы объяснить мне ещё одну деталь? Код, генерирующий список:
function drawModuleSeq(count, index, nameMod) { document.write("<select name=\"" + nameMod + "\">"); for (i = 0; i < count; i++) { add = ""; if (i == index) add = " selected=\"selected\""; document.write("<option value=\""+(i+1)+"\""+add+">"+(i+1)+"</option>"); } document.write("</select>"); } вроде бы закрывает все option-ы и select-ы. Вы написали Цитата:
|
давай без профессора и на ты лучше ;-) это звание не я себе присвоил
а ты бы перевел хоть тот кусок, который я процитировал. Там все описано |
barcelona,
Зачем столько раз писать в документ? function drawModuleSeq(count, index, nameMod) { var content = "<select name=\"" + nameMod + "\">"; for (i = 0; i < count; i++) { add = ""; if (i == index) add = " selected=\"selected\""; content += "<option value=\""+(i+1)+"\""+add+">"+(i+1)+"<"+"/option>"; } content += "<"+"/select>"; document.write(content); } |
barcelona, и еще... не используй экранирование, если оно не нужно... это называется синдром зубочистки ("<select name=\"" -> '<select name="')
|
x-yuri, спасибо.
Теперешний код валидацию прошёл, а вот работать что-то не хочет.. Если выбирать все элементы из списка, на каком-либо, да Firefox затирает код... У меня уже спортивный интерес появился, вроде и через PHP можно сделать, а всё равно хочу понять в чём дело, почему javascript+firefox так не хотят ладить. |
barcelona, можешь для начала прочитать http://webew.ru/articles/598.webew
проблема в insertAfter. Это можно выяснить с помощью ff + firebug + console.log (выводит из скрипта информацию на вкладку консоль). Она не выполняется даже один раз, если выбрать "Неосновной". Я еще, скорее всего, попробую разобраться p.s. у массивов есть такой метод - push, он позволяет избежать всяких проверок на undefined ;-) |
x-yuri, спасибо, что пытаешься помочь.
|
в общем, по-крайней мере разобрался, в каком месте он ff "подвисает". Теперь твоя очередь ;-)
p.s. скорее всего это баг, но полезно знать, что именно происходит "за сценой" (во время выполнения insertAfter) |
Часовой пояс GMT +3, время: 23:22. |