Checked = "checked" не работает в chrome
<input type="checkbox" name="Type[]" value="Red" checked="checked" /><span class="space-right">Red</span>
Правильно устанавливает флажок для проверки в firefox и safari, но не в хроме. Не можете найти информацию об этом в Интернете.
Кто-нибудь знает, как это исправить?
Вы также попробовали голый checked
, а также checked="true"
Не ища решение js, спасибо.
Изменить: ответ taco ниже описывает, в чем проблема. При использовании форм и элементов ввода элементы должны быть правильно вложены в теги <td></td>
или checked="checked"
не имеет эффекта. Вот пример jsfiddle, который доказывает, что это правда на chrome 29.0.1547.57: http://jsfiddle.net/LnL7b/
Ответы
Ответ 1
Мне удалось повторить эту проблему в Google Chrome версии 28.0.1500.95.
<table>
<tr>
<td>test</td>
<input type="radio" name="foo" value="bar" checked="checked">
</tr>
</table>
Я сломал стол, ненадлежащим образом установив переключатель. Это почему-то заставляет Google Chrome не отмечать входное радио как отмечено.
пример jsfiddle - сломанный и
Пример jsfiddle - работа
Ответ 2
checked = "checked" отлично работает в Chrome. Удостоверьтесь, что у вас нет других проблем. Любой недопустимый HTML. Нет встроенного элемента, содержащего элементы уровня блока?
Ответ 3
Попробуйте с тегом DIV
<div><input type="checkbox" name="ckkhuyenmai" id="ckkhuyenmai" checked>KHUYENMAI</div>
Все будет хорошо.
Ответ 4
Я знаю, что вы сказали, что не хотите его использовать, но jquery - это вариант:
<!DOCTYPE html>
<html>
<head>
<style>
div { color:red; }
</style>
<script src="http://code.jquery.com/jquery-1.9.1.js"></script>
</head>
<body>
<form>
<p>
<input type="checkbox" name="newsletter" value="Hourly" checked="checked">
<input type="checkbox" name="newsletter" value="Daily">
<input type="checkbox" name="newsletter" value="Weekly">
<input type="checkbox" name="newsletter" value="Monthly" checked>
<input type="checkbox" name="newsletter" value="Yearly">
</p>
</form>
<div></div>
<script>
var countChecked = function() {
var n = $( "input:checked" ).length;
$( "div" ).text( n + (n === 1 ? " is" : " are") + " checked!" );
};
countChecked();
$( "input[type=checkbox]" ).on( "click", countChecked );
</script>
</body>
</html>
http://jsfiddle.net/HnEgT/
Надеюсь, это поможет чему-то.
Ответ 5
Если у вас есть html:
<input type="checkbox" name="email">
<input type="checkbox" name="email">
<input type="checkbox" name="email" checked>
Тогда никто не будет проверен из-за конфликтов имен.
Ответ 6
Проверено = "проверено" отлично работает в Chrome. Убедитесь, что нет одинакового имени. Также проверьте наличие скрытых.