我有一个PHP while循环,我插入以下代码来显示On和Off按钮。
<div class="onoffswitch">
<input type="hidden" name="hiddenID" value="<?php echo $id; ?>">
<input type="checkbox" name="onoffswitch" class="onoffswitch-checkbox" id="myonoffswitch<?php echo $i ?>" <?php echo $status; ?>>
<label class="onoffswitch-label" for="myonoffswitch<?php echo $i; ?>">
<span class="onoffswitch-inner"></span>
<span class="onoffswitch-switch"></span>
</label>
</div>
现在,我想在开关按钮发生变化时获得隐藏(hiddenID
)字段值,但是它显示未定义以下代码:
$(document).ready(function () {
$(".onoffswitch").change(function() {
var hiddenID = $(this).attr('hiddenID');
alert(hiddenID);
});
});
为什么它会向我显示未定义的错误?
答案 0 :(得分:1)
$(this)
您目前位于onoffswitch
复选框中。它没有属性hiddenID
hiddenID
也不是其父元素中的属性。它是name
属性的值。
使用$(this).prev().val()
或
$(document).ready(function () {
$(".onoffswitch").change(function() {
var hiddenID = $(this).prev("[name=hiddenID]").val()
alert(hiddenID);
});
});