[英]Why my if condition isn't working with select box in javascript?
[英]Why is this javascript not working - select box if
我的网站上有此代码。 这个想法是当选择一个特定的选择框值时隐藏一个特定的类。
这是我的代码
$(document).ready(function(){
var txt = 'Marketing';
$("div.ginput_container select#input_3_1 option").each(function(){
if($(this).val()==txt){
$('.mar').hide();
}
});
});
我得到的结果是.mar类在页面加载后立即被隐藏。 我看不到错误,我也尝试过
var num = 1
但我有同样的问题。
$(document).ready(function() {
var txt = 'Marketing';
$("#input_3_1").change(function () {
if ( this.value == txt ) $('.mar').hide();
});
});
这是小提琴: http : //jsfiddle.net/9Cyxh/
如果要在选择其他选项时显示$('.mar')
,请使用toggle
代替:
$('.mar').toggle( this.value != txt );
这是小提琴: http : //jsfiddle.net/9Cyxh/1/
如果您希望它也能在页面加载时运行(在手动选择选项之前),则触发change事件:
$(document).ready(function() {
var txt = 'Marketing';
$("#input_3_1").change(function () {
$('.mar').toggle( this.value != txt );
}).change();
});
这是小提琴: http : //jsfiddle.net/9Cyxh/2/
您根本不需要循环
将您的选择附加到change()事件处理程序,应该就是这样。
$(document).ready(function(){
$("select#input_3_1").on('change', function() {
var txt = 'Marketing';
if(this.value === txt){
$('.mar').hide();
};
}).change()
});
如果您只想在值更改后隐藏“ .mar”类,并且该值等于“ Marketing”,请尝试
$("#input_3_1").change( function() {
if( $(this).val().toUpperCase() === "MARKETING" ) {
$(".mar").hide();
}
});
在这里演示
$("#input_3_1").change(function(){
if ($("#input_3_1").val()=='Marketing'){
$(".mar").hide();
}
});
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.