使用 jQuery 显示/隐藏
Using jQuery Show/Hide
当选择一个作为输入时,希望它显示.toggle,但它到目前为止只是隐藏了它?这也可能是一个很长的机会,但我如何编写这段代码,以便我可以再次使用它,这是我需要的,而不必编写新的类名。
这是我的代码脚本:
$(function () {
if ($(".binary").val() == "0"){
$( ".toggle" ).hide();
} else {
$( ".toggle" ).show();
}
});
我的网页
<div class="option checkbox">
<label class="field_wrap">
<div class="label">Show Borders</div>
<div class="field">
<select class="binary tug" name="show_post_borders">
<option value="0"></option>
<option value="1"></option>
</select>
</div>
</label>
</div>
<div class="toggle">Filer</div>
你的Javascript只在页面加载时执行一次。根据您提供的信息,我认为您真正想做的是:
$(function () {
$(".binary").change(function() {
if ($(this).val() == "0"){
$( ".toggle" ).hide();
} else {
$( ".toggle" ).show();
}
});
});
不同之处在于,您在这里设置了一个函数,该函数将在每次发生更改事件时运行(= 您在选择框中更改选择)。
尝试将函数包装在更改处理程序中,如下所示:
$(function () {
$('.binary').change(function() {
if ($(".binary").val() == "0"){
$( ".toggle" ).hide();
} else {
$( ".toggle" ).show();
}
});
像这样的事情应该是你想要做的:http://jsfiddle.net/BbXYt/
$(document).ready(function(){
$(".binary").change(function(){
if($(".binary").val() == "0"){
$( ".toggle" ).hide();
} else {
$( ".toggle" ).show();
}
});
$( ".toggle" ).hide();
});
.HTML:
<div class="option checkbox">
<label class="field_wrap">
<div class="label">Show Borders</div>
<div class="field">
<select class="binary tug" name="show_post_borders">
<option value="0">0</option>
<option value="1">1</option>
</select>
</div>
</label>
</div>
<div class="toggle">Filer</div>
你提到你想要可重用的代码。试试这个:
$(function () {
$(".toggle_field").change(function() {
var field = $(this);
if (field.val() == field.data("toggle-show-val")) {
$(field.data("toggle-selector")).show();
} else {
$(field.data("toggle-selector")).hide();
}
});
});
.HTML
<div class="option checkbox">
<label class="field_wrap">
<div class="label">Show Borders</div>
<div class="field">
<select class="binary tug toggle_field" data-toggle-selector=".toggle" data-toggle-show-val="1" name="show_post_borders">
<option value="0"></option>
<option value="1"></option>
</select>
</div>
</label>
</div>
<div class="toggle">Filer</div>
小提琴:http://jsfiddle.net/qCeJ8/
相关文章:
- 基于其他下拉菜单选择隐藏/显示下拉菜单
- 数据表-隐藏/显示列
- $scope变量,ng隐藏/显示
- 隐藏/显示包含单词的ul li项目.但只能入住李的子女
- JQuery隐藏/显示无法正常工作
- 隐藏/显示下面的分区根据是否选择某个选项进行选择
- 使用类而不是id在JavaScript中隐藏显示
- 我想隐藏/显示我的SVG元素,同时在anguarJS中使用它
- 隐藏/显示图像
- Javascript 中的表 - 隐藏/显示列
- 仅使用Javascript隐藏/显示元素,而不会弄乱DOM
- 隐藏/显示 js 代码不会在 IE8 或更低版本上运行
- Magento:根据所选国家/地区隐藏/显示输入字段
- 货到付款选择隐藏/显示付款方式
- "隐藏/显示”;元素和更改按钮背景图像
- Bootstrap Collapse.js切换菜单的隐藏/显示
- 如何隐藏/显示<面板>使用jquery
- 在php中隐藏/显示切换回声结果
- 如何使用jquery使2个按钮切换css,而只使用1个按钮.不显示隐藏/显示
- JQuery隐藏/显示不起作用