Как выделить нужные checkbox одним кликом?
Есть массив
<input type="checkbox" name="checkbox[1]" value="11"> <input type="checkbox" name="checkbox[2]" value="22"> <input type="checkbox" name="checkbox[3]" value="33"> <input type="checkbox" name="all" value="">Все Как сделать, чтобы при нажатии 'Все' помечались именно эти 3 пункта? Просьба дать код |
Здравствуйте!
Судя по вашему сообщению, вы ну совсем не знаете javascript. Освойте основы языка и вопрос отпадет сам, полностью или частично. А с чем не справитесь - поможем. На сайте javascript можно начать изучать с учебника, раздел Основы javascript. Возможно, вам также понадобится HTML - учебник есть, например, здесь: http://ru.html.net/tutorials/html/ Задавайте конкретные вопросы по ходу дела. Вы просите готовый скрипт с нуля. Это работа, и за нее обычно платят деньги. Для таких сообщений предназначен раздел форума "Работа". Если вы все же хотите, чтобы вам помогли - приложите какие-то усилия сами и задавайте вопросы по ходу дела. |
Да я пробую, не получается, вот что
<form name="form1" method="post" action=""> <input type="checkbox" name="total" value="checkbox" onClick="checkAll(this.form,'checkbox[]',this.checked)">Отметить все <input type="checkbox" name="checkbox[1]" value="checkbox">1 <input type="checkbox" name="checkbox[2]" value="checkbox">2 <input type="checkbox" name="checkbox[2]" value="checkbox">3 </form> это я пытался немного переделать скрипт, если просто checkbox[] то работало <script type="text/javascript"> function checkAll(oForm, cbName, checked) { oForm.checkbox[1].checked = checked; oForm.checkbox[2].checked = checked; oForm.checkbox[3].checked = checked; } </script> |
<!DOCTYPE HTML>
<html lang="en-US">
<head>
<meta charset="UTF-8">
<title></title>
<script type="text/javascript">
function getForm( elem ) {
if ( elem.form ) return elem.form;
var form = elem.parentNode;
while ( form && form.nodeName.toLowerCase() != 'form' ) {
form = form.parentNode;
}
return (elem.form = form);
}
function checkAll( oForm, reName, checked ){
if ( !oForm ) return;
var inputList = oForm.getElementsByTagName("input");
for ( var i = 0, elem; (elem = inputList[i++] ); ) {
if ( elem.type == 'checkbox' && reName.test( elem.name) ) {
elem.checked = checked;
}
}
}
</script>
</head>
<body>
<form action="">
<ul>
<li><input type="checkbox" name="total" onclick="checkAll( this.form || getForm(this), /checkbox\[\d+\]/, this.checked )"> Check(Uncheck) All</li>
<li><input type="checkbox" name="checkbox[0]"/> 1</li>
<li><input type="checkbox" name="checkbox[1]"/> 2</li>
<li><input type="checkbox" name="checkbox[2]"/> 3</li>
<li><input type="checkbox" name="checkbox[3]"/> 4</li>
<li><input type="checkbox" name="checkbox[4]"/> 5</li>
</ul>
</form>
</body>
</html>
|
Спасибо, Вы очень помогли!
|
MCB,
Вариант ...
<!DOCTYPE html>
<html>
<head>
<title></title>
<script type="text/javascript">
function checkAll(oForm,checked)
{
oForm['checkbox[1]'].checked = checked;
oForm['checkbox[2]'].checked = checked;
oForm['checkbox[3]'].checked = checked;
}
</script>
</head>
<body>
<form name="form1" method="post" action="">
<input type="checkbox" name="total" value="checkbox" onClick="checkAll(this.form,this.checked)">Отметить все
<input type="checkbox" name="checkbox[1]" >1
<input type="checkbox" name="checkbox[2]" >2
<input type="checkbox" name="checkbox[3]" >3
</form>
</body>
</html>
|
рони, спасибо, я все думал, что все не подходит, кучу вариантов испробовал
|
на jquery красивее
<!DOCTYPE html>
<html>
<head>
<title></title>
<script class="jsbin" src="http://code.jquery.com/jquery-1.7.1.min.js"></script>
<script>
$(function () {
$('input[name="total"]').change(function () {
$(this).siblings('input').prop('checked', this.checked);
});
});
</script>
</head>
<body>
<form name="form1" method="post" action="">
<input type="checkbox" name="total">Отметить все
<input type="checkbox" name="checkbox[1]" >1
<input type="checkbox" name="checkbox[2]" >2
<input type="checkbox" name="checkbox[3]" >3
</form>
</body>
</html>
|
| Часовой пояс GMT +3, время: 17:55. |