当选择选项等于时,jQuery隐藏/显示输入
如果selected选项等于2,我想在主体中添加以下行:
我是用隐藏类做的。 它有效,但我不确定它是否是一个正确的解决方案:
$(document).ready(function (){ $("#fnivel").change(function(){ var selected_option = $('#fnivel').val(); if(selected_option == '2'){ $("#fnivel2").removeClass("hide"); $("#fnivel2").attr('pk','1'); } if(selected_option != '2'){ $("#fnivel2").addClass("hide"); $("#fnivel2").removeAttr('pk'); } }) }); one two three
这是一个选项,首先是HTML:
JavaScript:
$("#fnivel").change(function () { var selected_option = $('#fnivel').val(); if (selected_option === '2') { $('#fnivel2').attr('pk','1').show(); } if (selected_option != '2') { $("#fnivel2").removeAttr('pk').hide(); } })
这是一个JsFiddle示例。
另一种方法,取决于您的要求是以编程方式创建输入控件,例如
$('#fnivel2').append('').show();
这也是一个解决方案:
$(document).ready(function() { $("#fnivel").change(function() { var selected_option = $('#fnivel').val(); if (selected_option == '2' && $("#fnivel2").length == 0) { $("#fnivel").after("") } if (selected_option != '2') { $("#fnivel2").remove() } }) });
小提琴:
http://fiddle.jshell.net/prollygeek/4kPk3/
如果你想保留输入值,你的只有用。
您可能希望使用$("#fnivel").after($('input', {id: 'fnivel2', pk: '1'}));
添加输入元素$("#fnivel").after($('input', {id: 'fnivel2', pk: '1'}));