Jump to content

Sserg-135

User
  • Posts

    146
  • Joined

  • Last visited

Information

  • Sex
    Мужчина

Sserg-135's Achievements

Explorer

Explorer (1/14)

-2

Reputation

  1. суть в том, что у меня не получается определить значение (опцию) динамически наполняемого селекта к моменту (или во время) загрузки страницы. Т.е. скрипты, которые исполняются во время загрузки страницы не могут еще получить состояние селекта ( т.е. он для них еще стоит на нулевой опции). Но визуально , когда страница уже отображается браузером, то я вижу что селект стоит на выбранной ("правильной" ) опции. Получается что когда происходит событие готовности документа, то селект просто существует, но не установлен на нужную опцию. Хотя функция которая заполняет селект и устанавливает его на нужную опцию по идее уже отработала ( я ее вызываю перед тем как считывать состояние селекта)
  2. Бьюсь несколько дней не могу понять: Есть скрипт на JS которым наполняю список <select> при загрузке страницы document.getElementById(Id).options[num_option]=new Option(result[i]['Model'],result[i]['code_model'],false,false);где result это массив который заполняется из Mysql с помощью AJAX Далее через Jquery выбираю опцию которую делаю выбранной: $("#"+Id+" :contains("+model+")").attr("selected", "selected");$("#"+Id+" :contains("+model+")").prop("selected", true);Где model это переменная с текстовым значением выбранной опции ( Хотя это не принципиально т.к. при выборе установки по значению value все то-же самое о чем пойдет речь ниже). Так вот суть трабла: мне нужно узнать значение выбранной опции списка и передать его в функцию которая исполняется после установки данного селекта: document.getElementById('Id').value – мне всегда возвращает значение первой опции как и $('#Id’ option:selected').val(), хотя сам список благополучно заполняется и стоит на правильно выбранной опции. Причем если я перед этим напишу alert(‘xxx’), т.е. alert(‘xxx’); document.getElementById('Id').value то получаю правильное значение выбранной опции. Такое впечатление что нет готовности установки селекта. Хотя если подобный список сформировать например силами PHP т.е. не динамически то все опции определяются правильно. Для чего мне это нужно – чтобы установить взаимосвязанные списки на значение полученное из переменной URL. Я конечно могу передать в ту функцию значение непосредственно из URL, НО: 1) хочется разобраться что за хрень : ))) и 2) для установки цепочки взаимосвязанных селектов и событий, красивее и удобнее в программировании использовать обращение через значения самих селектов. Кстати попытки дождаться готовности событий типа $(document).ready(function () {document.getElementById('Id').valueИ здесь считывать значения селектов});$(windows).load(function () {document.getElementById('Id').valueИ здесь считывать значения селектов});Приводят к тому-же результату- т.е селект как-бы «все еще на первой опции» Вот собственно ) Что я делаю неправильно? Помогите пожалуйста
  3. вот где-то так http://jsfiddle.net/xLUt7/
  4. - именно это и не пойму, в стилях же прописано свойство, как-же тогда к нему обратиться, чтобы в тэге не прописывать?
  5. Потому что block.style.display изначально - пустая строка. block.style - это то, что назначено непосредственно через атрибут style элемента. Поглядите в DOM-инспекторе, там это прекрасно видно. Не совсем понятно почему так выходит. Т.е в данном случае свойство display нужно прописывать непосредственно в тэге <div style='display: none;'> ?
  6. Такой способ имеет право на жизнь? (код и идея слоя взяты из примеров с этого сайта)http://jsfiddle.net/sjC8A/Или не комильфо? Правда почему-то при загрузке с первого клика не работает...
  7. Спасибо за наводки, оказалось не так просто) Хотя и пример со слоем по центру в принципе можно заставить работать
  8. Форумчане, правильно ли я понимаю технологию создания появляющегося слоя в центре странички (например как на этом форуме, когда кликаешь ссылку Регистрация или когда кликаешь на иконки BB кодов при оформлении новой темы ): Шаг1: Где-нибудь в теле HTML странички (в любом месте по сути?) создаем отцентрированный слой по принципу описанному например в http://htmlbook.ru/l...u-veb-stranitsy со свойством display:none и с нужным содержанием Шаг 2: на JS пишем коротенкую функцию, которая при клике на ссылку, по которой нужно открыть этот слой, меняет свойство слоя display:visible и ставит z-index 100000, чтобы слой был поверх всего. Так правильно? или весь слой надо формировать исключительно средствами JS? И как тогда делается эффект затемнения "нижележащих" слоев? через слой с полупрозрачным фоном, через opacity или полупрозрачныу картинку в фоновом рисунке формата png?А эффект небольшой тени только по периметру слоя? Буду рад подсказкам :-) Спасибо
  9. одну библиотеку jquery. Без фреймворков можно так http://jsfiddle.net/ERfFR/6/ Огромное спасибо!
  10. Ого, круто! только честно говоря не хотелось связываться с ней. Надо ведь подключать кучу библиотек?
  11. Помогите правильно написать скрипт, делающий следующее: Мне нужно в зависимости от выбранного из списка select как-бы "перенести" размещение поля ввода input из одной части таблицы в другую (например их одной из нижних ячеек в одну из верхних). Но при этом чтобы имя переменной было одно (так удобнее для дальнейшей записи в БД). Наиболее простой способ вижу таким: создаю два идентичных тэга input в требуемых ячейках c одинаковыми name, но с разным значением свойства display и и затем скриптом меняю, невидимую на block.style.display = ""; видимую на block.style.display = "none"; Вопрос: корректно ли передадуться на сервер значения переменной (формально же их две с одним именем) и вообще корректо-ли так делать? Нужно ли еще добавить смену свойства disable?. Или вообще так не делают?
  12. Добрый день Помогите с составлением запроса группировки, но с такой особенностью: Есть таблица, которую нужно сгруппировать по значению определенного столбца (с подсчетом кол-ва). Само по себе это понятно просто и вопросов не вызывает т.е. как-то так: SELECT var_1, COUNT(*) AS qlt FROM table_1 LEFT JOIN `table_2` ON table_1.code=`table_2`.CODE GROUP BY table_1.code ORDER BY var_2-- но есть нюанс: нужно чтобы строки со значением code='' (т.е.пустое поле) и со значением code=-1 попали в одну группу и соответственно подсчитались вместе как одна группа. Как можно это составить в одном запросе, если можно конечно. Я пока кроме как сделать дополнительно к основному еще два запроса с условиям по: WHEN table_1.code=-1 или с HAVING table_1.code=-1 , а затем HAVING table_1.code='', а затем объединить итоговые массивы не придумал. Хотелось бы в одном запросе- чтоб красиво было)
  13. Great Rash, теперь все сделал: опции добавляю через document.getElementById(Id).options[num_option]=new Option('name','value', false, false); а оптогруппы как в Вашем последнем коде через : document.getElementById(Id).appendChild(group); пока работает и в лисе и в осле и в хроме Еще раз спасибо!
  14. Great Rash, спасибо за код, в IE и в Хроме группы появились, но теперь в FF не видны названия самих опций ))
×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. See more about our Guidelines and Privacy Policy