함수를 이름별로 따로 정의한 다음 선택 해제 된 각 항목에 대해 페이지가로드 된 후에 함수를 호출하십시오.
function onChange(this) {
if(this.checked){
alert("HERE");
//...
}else{
alert("THERE");
//...
}
}
체크 박스가 변경 될 것 모니터링
귀하의 코드 :
$("#myDiv").on("change", "input[type='checkbox']" , function() {
onChange(this);
});
나는 코드가, 내가 확인란을 인쇄하고있는 것을 정의하는 몇 가지 코드를 작성했습니다 어떻게 생겼는지 알 수 없기 때문에 기본적으로 선택됩니다. 그것은 PHP지만 개념은 모든 서버 측 언어에서 작동해야합니다.
<select>
<?php
$items = array(
'value1' => 'text1',
'value2' => 'text2',
'value3' => 'text3'
);
$selected = array(
'value1' => true,
'value3' => true
);
foreach ($items as $value => $text) {
$selectedAttr = isset($selected[$value]) && $selected[$value]) ?
" selected='selected'" : '';
echo "<option value='$value'$selectedAttr>$text</option>";
}
?>
</select>
선택한 각 옵션에 대해 실행하려는 기능을 실행하는 javascript를 인쇄해야합니다. 내가 사용하는 체크 박스 예를 들어, 당신이 원하는 것 그 최종 결과는 다음과 같습니다
$().ready(function() {
var defaultSelected = [ "[option name='value1']" , "[option name='value3']" ];
for (var i=0; i < defaultSelected.length; i++) {
$(defaultSelected[i]).each(onChange);
}
});
당신은 서버 측 자바 스크립트를 생성해야합니다
: 잘 모르겠어요
<?php
// $selected was defined in the previous code section
// Create selectors that will select each checkbox option
$selectors = array();
foreach ($selected as $s) {
array_push($selectors, "[option name='$s']");
}
// Produces string: [ "[option name='value1']" , "[option name='value3']" ]
$jsSelectorArray = '[ "' . implode('" , "', $selectors) . '" ]';
echo "
$().ready(function() {
var defaultSelected = $jsSelectorArray;
for (var i=0; i < defaultSelected.length; i++) {
$(defaultSelected[i]).each(function() {
onChange(this);
});
}
});
";
?>
무엇 대답해라. jsFiddle을 만들 수 있습니까? – davidbuzatto
'change' 이벤트에 연결 했으므로'.change()'를 시도 했습니까? – MrOBrian