如果在 Sharepoint 设计器上勾选了复选框,我如何显示 div?
How can I show a div if checkbox is ticked on Sharepoint designer?
我不知道为什么这段代码不起作用,但是当我选中复选框时它不起作用。 div 只是保持隐藏状态。我以前做过,但是这次不行了。
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<%@ Page Language="C#" %>
<!DOCTYPE html>
<html lang="en">
<head>
<meta name="WebPartPageExpansion" content="full" />
<meta charset="utf-8">
<title>jQuery Show Hide Using Checkboxes</title>
<script type="text/javascript" src="../SiteAssets/jquery-1.11.1.min.js"></script>
<script type="text/javascript">
$(document).ready(function(){
$('input[type=checkbox]').change(function(){
var checked = $(this).attr('checked');
if (checked) {
$('.other').show();
} else {
$('.other').hide();
}
});
});
</script>
</head>
<body>
<div name="main">
<input type="checkbox" /> If this is checked display div
</div>
<div class='other' name='other' title='other' style='display:none;'>
<h2>test</h2>
<input></input>
<input></input>
<input></input>
</div>
</body>
</html>
我做错了什么?我想不通。谢谢
您正在使用 attr
那 returns undefined
var checked = $(this).attr('checked');
if (checked) { //here checked is not a boolean
永远记住
.prop('checked')
returns 布尔值
所以使用 .prop()
。休息很好。
希望对您有所帮助:)
因为复选框中没有属性 checked
。所以它返回 undefined。你可以通过 this.checked
直接访问 属性。
$(document).ready(function(){
$('input[type=checkbox]').change(function(){
var checked = this.checked;
if (checked) {
$('.other').show();
} else {
$('.other').hide();
}
});
});
我不知道为什么这段代码不起作用,但是当我选中复选框时它不起作用。 div 只是保持隐藏状态。我以前做过,但是这次不行了。
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<%@ Page Language="C#" %>
<!DOCTYPE html>
<html lang="en">
<head>
<meta name="WebPartPageExpansion" content="full" />
<meta charset="utf-8">
<title>jQuery Show Hide Using Checkboxes</title>
<script type="text/javascript" src="../SiteAssets/jquery-1.11.1.min.js"></script>
<script type="text/javascript">
$(document).ready(function(){
$('input[type=checkbox]').change(function(){
var checked = $(this).attr('checked');
if (checked) {
$('.other').show();
} else {
$('.other').hide();
}
});
});
</script>
</head>
<body>
<div name="main">
<input type="checkbox" /> If this is checked display div
</div>
<div class='other' name='other' title='other' style='display:none;'>
<h2>test</h2>
<input></input>
<input></input>
<input></input>
</div>
</body>
</html>
我做错了什么?我想不通。谢谢
您正在使用 attr
那 returns undefined
var checked = $(this).attr('checked');
if (checked) { //here checked is not a boolean
永远记住
.prop('checked')
returns 布尔值
所以使用 .prop()
。休息很好。
希望对您有所帮助:)
因为复选框中没有属性 checked
。所以它返回 undefined。你可以通过 this.checked
直接访问 属性。
$(document).ready(function(){
$('input[type=checkbox]').change(function(){
var checked = this.checked;
if (checked) {
$('.other').show();
} else {
$('.other').hide();
}
});
});