hide/show php 按 id 的复选框,如 www.anysite.php?id=10
hide/show php checkbox by id like www.anysite.php?id=10
我有一个表单和一个复选框。通过单击复选框,其他 div 中的 div 将显示或隐藏。这行得通!但是,如果我使用 xxxxx.php?id=10 之类的 ID 访问我的页面,复选框会被选中,但 div 会被隐藏。如果我点击复选框,divs 会出现,但复选框未选中(不利于例如 mysql 更新)..希望任何人都可以帮助我解决这个问题..
这是我的代码:
$(document).ready(function() {
$('#Show').hide();
$("input[name=mycheckbox]").click(function () {
$('#Show').toggle();
});
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<form id="form">
<div class="form-group">
<div class="form-group">
<div class="checkbox-inline">
<label>
<input type="checkbox" name="mycheckbox" id="mycheckbox" value="yes"> my option
</label>
</div>
</div>
</div>
<div id="Show">
<div class="form-group">
<label for="textinput" class="control-label">Company </label>
<div class="">
<input type="text" class="form-control" name="name" id="name" placeholder="" value="">
</div>
</div>
</div>
</form>
我的输入字段有此代码(php 在代码段中不起作用):
<input type="checkbox" name="mycheckbox" id="mycheckbox" value="yes" <?php if (isset($_GET['id'])) {echo $row->mycheckbox == "yes" ? 'checked="checked"' : "";}?>
感谢您的帮助!
我建议使用 change
事件,在页面加载时使用 .trigger('change')
触发,以便 div
与复选框元素的状态同步。
你也应该.toggle(display)
$("input[name=mycheckbox]").change(function () {
$('#Show').toggle(this.checked);
}).trigger('change');
我有一个表单和一个复选框。通过单击复选框,其他 div 中的 div 将显示或隐藏。这行得通!但是,如果我使用 xxxxx.php?id=10 之类的 ID 访问我的页面,复选框会被选中,但 div 会被隐藏。如果我点击复选框,divs 会出现,但复选框未选中(不利于例如 mysql 更新)..希望任何人都可以帮助我解决这个问题..
这是我的代码:
$(document).ready(function() {
$('#Show').hide();
$("input[name=mycheckbox]").click(function () {
$('#Show').toggle();
});
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<form id="form">
<div class="form-group">
<div class="form-group">
<div class="checkbox-inline">
<label>
<input type="checkbox" name="mycheckbox" id="mycheckbox" value="yes"> my option
</label>
</div>
</div>
</div>
<div id="Show">
<div class="form-group">
<label for="textinput" class="control-label">Company </label>
<div class="">
<input type="text" class="form-control" name="name" id="name" placeholder="" value="">
</div>
</div>
</div>
</form>
我的输入字段有此代码(php 在代码段中不起作用):
<input type="checkbox" name="mycheckbox" id="mycheckbox" value="yes" <?php if (isset($_GET['id'])) {echo $row->mycheckbox == "yes" ? 'checked="checked"' : "";}?>
感谢您的帮助!
我建议使用 change
事件,在页面加载时使用 .trigger('change')
触发,以便 div
与复选框元素的状态同步。
你也应该.toggle(display)
$("input[name=mycheckbox]").change(function () {
$('#Show').toggle(this.checked);
}).trigger('change');