[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Чек-боксы запоминаются браузером. Это плохо
inpost
Есть 2 чекбокса.
<p><label><input type="radio" name="door_typez" value="Одинарная" checked="checked" /> Одинарная</label></p>
<p><label><input
type="radio" name="door_typez" value="Двойная" /> Двойная</label></p>


Так вот, если в браузере нажать Ф5, то тот чекбокс, который был выбран - запоминается, несмотря на то, что у меня стоит чекед для первого.
Я понимаю, это кешируется браузером, так вот, как от этого избавиться!



Спустя 3 минуты, 24 секунды (31.12.2011 - 18:56) Guest написал(а):

header('Expires: Thu, 21 Jul 1977 07:30:00 GMT');
header('Last-Modified: '.gmdate('D, d M Y H:i:s').' GMT');
header('Cache-Control: post-check=0, pre-check=0', false);
header('Pragma: no-cache');

?

Спустя 1 час, 15 минут, 4 секунды (31.12.2011 - 20:11) sergeiss написал(а):
inpost - 2 вопроса:

1. Какой именно браузер так делает?
2. Тебе больше делать нечего на несколько часов до НГ, чем программировать? wink.gif

Спустя 2 часа, 50 минут, 24 секунды (31.12.2011 - 23:01) inpost написал(а):
sergeiss
1. ФФ последний.
2. Хороший заказ, а пока стол накрывали, мне было нечего делать smile.gif

Guest
Спасибо большое, я попробую!

Спустя 5 часов, 11 минут, 36 секунд (1.01.2012 - 04:13) inpost написал(а):
Guest
Всё работает, спасибо!

Спустя 1 месяц, 10 дней, 14 часов, 7 минут, 13 секунд (11.02.2012 - 18:20) inpost написал(а):
Увы, ничего не работает! Один раз обнулился, другой раз уже нет.
Через задницу это делается так: autocomplete="off". А вот как сделать кросс-браузно - загадка sad.gif

Спустя 5 часов, 31 минута, 20 секунд (11.02.2012 - 23:51) TranceIT написал(а):
А если при загрузке страницы на js выставлять чекбоксы по дефолту?

Спустя 19 минут, 34 секунды (12.02.2012 - 00:11) walerus написал(а):
<p><label><input type="radio" name="door_typez" value="Одинарная" checked="checked" /> Одинарная</label></p>


Может все таки так ?
<p><label><input type="radio" name="door_typez" value="Одинарная" checked /> Одинарная</label></p>

Спустя 34 секунды (12.02.2012 - 00:11) inpost написал(а):
TranceIT
От переключения чек-боксов там функции запускаются. Около 600 строк кода, на каждый чекбокс, чуть ли, не своя операция.
Разве что прописать выделение чекбокса и установить trigger('click');



Спустя 17 секунд inpost написал(а):
walerus
Правильнее checked="checked"

Спустя 1 минута, 30 секунд (12.02.2012 - 00:13) walerus написал(а):
<?php
//отправляем заголовки о том что низя нас кэшировать
header("Expires: Mon, 26 Jul 1997 05:00:00 GMT");
header("Last-Modified: " . gmdate("D, d M Y H:i:s") . " GMT");
header("Cache-Control: no-store, no-cache, must-revalidate");
header("Cache-Control: post-check=0, pre-check=0", false);
header("Content-Type: text/html; charset=utf-8");
header("Pragma: no-cache");

Ну и еще в догонку.

Спустя 2 минуты, 53 секунды (12.02.2012 - 00:16) TranceIT написал(а):
Цитата (walerus @ 11.02.2012 - 21:13)
<?php
//отправляем заголовки о том что низя нас кэшировать
header("Expires: Mon, 26 Jul 1997 05:00:00 GMT");
header("Last-Modified: " . gmdate("D, d M Y H:i:s") . " GMT");
header("Cache-Control: no-store, no-cache, must-revalidate");
header("Cache-Control: post-check=0, pre-check=0", false);
header("Content-Type: text/html; charset=utf-8");
header("Pragma: no-cache");

Ну и еще в догонку.

В свое время очень долго танцевал с заголовками, сделать полностью кроссбраузерное решение мне так и не удалось...

Спустя 4 минуты, 11 секунд (12.02.2012 - 00:20) walerus написал(а):
HTML
<input type="radio" checked>
<input
type="checkbox" checked>


XHTML
<input type="radio" checked="checked" />
<input
type="checkbox" checked="checked" />


Оба правы :D

Спустя 1 час, 16 минут, 4 секунды (12.02.2012 - 01:36) Guest написал(а):
При загрузке устанавливает радио - батон на первый элемент
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd"
>
<html>
<head>
<title>
rrr</title>
<script
type="text/javascript">

function
check() {
var inputs_ = document.getElementsByName('rr');
for ( var i = 0; i < inputs_.length; i++ ) {
inputs_[i].checked = !i;
}
}


function test () {
alert('***');
}

function onLoad() {
check();
var inputs_ = document.getElementsByName('rr');
for ( var i = 0; i < inputs_.length; i++ ) {
inputs_[i].addEventListener('change', test);
}
}


</script>
</head>
<body
onload="onLoad();">

<input
type="radio" name="rr" checked="checked"/>
<input
type="radio" name="rr"/>
<input
type="radio" name="rr"/>
<input
type="radio" name="rr"/>

</body>
</html>

Спустя 11 часов, 18 минут, 30 секунд (12.02.2012 - 12:54) inpost написал(а):
Guest
Я же говорю, там чекбоксов разбито где-то на 20-25 групп, и на каждый стоит условие "onclick", поэтому такой метод слишком огромный и тяжелый.

Спустя 6 часов, 28 минут, 37 секунд (12.02.2012 - 19:23) Guest написал(а):
Не понимаю, как любое событие в частности "onclick", которое вызывается после рендеринга страницы, связано с скриптом, который выполняется во время загрузки страницы(естественно, кроме тех случаев, когда скрипт выполняющийся с рендерингом поставит в очередь слишком много операций на выполнение, которые будут выполнятся и после загрузки страницы). И не уверен, что данный скрипт обнуления тяжелый, но обманывать не буду - на большом количестве элементов 'мега-скрипт' не тестировал.

Если с JS реализацией действительно не клеится, можно использовать следующую конструкцию:

<input type="radio" name="rr[<?= date('Y-m-d') ?>]" checked="checked"/>
<input type="radio" name="rr[<?= date('Y-m-d') ?>]"/>
<input type="radio" name="rr[<?= date('Y-m-d') ?>]"/>
<input type="radio" name="rr[<?= date('Y-m-d') ?>]"/>

Минус - передаются дополнительные ненужные данные в виде даты.
Плюс - при каждом обновлении страницы input будет расцениваться как новый и, естественно, кеш браузера не устоит )

Спустя 7 минут, 6 секунд (12.02.2012 - 19:30) Guest написал(а):
Хотя с date('Y-m-d ') провтыкал ) . Для уникальности ключа на сутки лучше использовать date('H:i:s'). Можно и вовсе рандом.
Но суть та же.

Спустя 52 минуты, 3 секунды (12.02.2012 - 20:22) sebastjan написал(а):
Динамически на РНР писать фору с чекбоксами, а там сможешь и оставить нужные отмеченные или по умолчанию оставлять отмеченные.


_____________
Обучаю веб-программированию качественно и не дорого: http://school-php.com
Фрилансер, принимаю заказы: PHP, JS, AS (видео-чаты). Писать в ЛС (Личные сообщения на phpforum).
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2025 Invision Power Services, Inc.