Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 28.06.2011, 19:45
Интересующийся
Отправить личное сообщение для irkprin Посмотреть профиль Найти все сообщения от irkprin
 
Регистрация: 28.06.2011
Сообщений: 28

Как сделать кроссбраузерный checkbox
есть checkbox
<input type="checkbox" name="hard_copy" OnClick="output();" >


есть ajax
function output() {
	hard_copy=document.getElementsByName('hard_copy').value;
	two_copy=document.getElementsByName('two_copy').value;
	nocache = Math.random();
	http.open('get', '/chebe-kopir-pechat-zakaz.php?hard_copy='+hard_copy+'&two_copy='+two_copy+'&nocache='+nocache);
	http.onreadystatechange =  searchNameqReply;
	http.send(null);
}


вывожу
echo $hard_copy=$_POST['hard_copy'];


Корректно работает только в Хроме. Т.е. постановка и снятие галки ведет к запланированному результату.
В других браузерах: FF, Opera, IE выдает всегда On, true, 1, Yes...Как только не вертел...

Гуглил день, не помогает... Чувствую, что checkbox иначе как то нужно обработать в ajaxe, но как?
Ответить с цитированием
  #2 (permalink)  
Старый 28.06.2011, 20:59
sinistral
Посмотреть профиль Найти все сообщения от melky
 
Регистрация: 28.03.2011
Сообщений: 5,418

что такое

document.getElementsByName('hard_copy').value


какое может быть у флажка значение?
Ответить с цитированием
  #3 (permalink)  
Старый 28.06.2011, 23:00
Интересующийся
Отправить личное сообщение для irkprin Посмотреть профиль Найти все сообщения от irkprin
 
Регистрация: 28.06.2011
Сообщений: 28

теоретически value можно указать. здесь конечно оно лишнее. думаю будет работать и совсем без этой сточки.
Если шаришь, подскажи как true/false кроссбраузерно передать в php?
Ответить с цитированием
  #4 (permalink)  
Старый 28.06.2011, 23:24
sinistral
Посмотреть профиль Найти все сообщения от melky
 
Регистрация: 28.03.2011
Сообщений: 5,418

т.е. состояние чекбокса передать php скрипту?

ваш код так же остаётся (только подправьте,если что)

а щас будет выводиться ваш URL. обратите внимание на hard_copy в модальном окне

<input type="checkbox" name="hard_copy"> Тач ми

<script>
var hard_copy = document.getElementsByName('hard_copy')*!*[0]*/!*;

hard_copy.*!*onchange*/!*=function(){

/*ваш код AJAX*/

            alert ( "URL : \n\n "+'/chebe-kopir-pechat-zakaz.php?hard_copy='+hard_copy.checked )

}
</script>

Последний раз редактировалось melky, 29.06.2011 в 11:11.
Ответить с цитированием
  #5 (permalink)  
Старый 29.06.2011, 08:55
Интересующийся
Отправить личное сообщение для irkprin Посмотреть профиль Найти все сообщения от irkprin
 
Регистрация: 28.06.2011
Сообщений: 28

не работает к сожалению. через IE7 даже здесь можно проверить. когда проверяю у себя IE после клика на чекбокс пишет "Неопознанная ошибка"
Ответить с цитированием
  #6 (permalink)  
Старый 29.06.2011, 09:12
Интересующийся
Отправить личное сообщение для irkprin Посмотреть профиль Найти все сообщения от irkprin
 
Регистрация: 28.06.2011
Сообщений: 28

В опере тоже интересно отрабатывает! Включил вывод строки:
<script type="text/javascript">
$(document).ready(function(){
  function showValues() {
    var str = $("form").serialize();
    $("#results").text(str);
  }
  $(":checkbox, :radio").click(showValues);
  showValues();
});
</script>


Когда галка есть выводит: &material=1&hard_copy=on&kol_files
Когда нет: &material=1&kol_files

при этом php отрабатывает, что hard_copy всегда в on!
Ответить с цитированием
  #7 (permalink)  
Старый 29.06.2011, 10:35
Интересующийся
Отправить личное сообщение для Cariño Посмотреть профиль Найти все сообщения от Cariño
 
Регистрация: 19.04.2011
Сообщений: 9

Сообщение от irkprin Посмотреть сообщение
не работает к сожалению. через IE7 даже здесь можно проверить. когда проверяю у себя IE после клика на чекбокс пишет "Неопознанная ошибка"
В ie7 просто событие onchange выполняется после потери фокуса checkbox. Замените его на onclick и всё будет работать
Ответить с цитированием
  #8 (permalink)  
Старый 29.06.2011, 11:32
Интересующийся
Отправить личное сообщение для irkprin Посмотреть профиль Найти все сообщения от irkprin
 
Регистрация: 28.06.2011
Сообщений: 28

Спасибо ВСЕМ большое, разобрался
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как лучше сделать виджет? comentator Элементы интерфейса 0 25.03.2011 08:44
Как сделать, чтобы при наведении на кнопку справа от нее появлялись текстовые ссылки? Tass Общие вопросы Javascript 7 17.02.2011 09:06
Подскажите как сделать меню на CSS если: greatilya (X)HTML/CSS 10 18.10.2009 20:26
Вопрос как сделать эту панельку Определённых размеров и свойств. jei jQuery 3 09.06.2009 19:14
как сделать гиперсылку на объект javascript??? kos_walker Общие вопросы Javascript 3 30.09.2008 06:58