答案 0 :(得分:1)
您应该在option:selected
事件处理程序中查找change
,而不是select
,因为它本身没有类,然后使用.hasClass()
方法
$('#country').change(function () {
var selected = $(this).find('option:selected');
$('#hiddendiv').toggle(selected.hasClass('warning'));
});
我在上面的示例中使用了.toggle()
方法而不是.show()
/ hide()
,因为如果您想要{{1},则不需要if
语句仅当选定的div
具有类option
时才会显示。
答案 1 :(得分:0)
我对您的脚本进行了一些编辑,现在工作正常:
$('#country').change(function () {
var className = $(this).find('option:selected').attr("class");
if (className == 'warning')
{
$('#hiddendiv').show();
}
else if (className == 'noWarning'){
$('#hiddendiv').hide();
}
});
答案 2 :(得分:0)
使用(domain.com/).*?(/wp-content)
获取所选的选项,然后检查是否存在该类..
option:selected
答案 3 :(得分:0)
使用jQuery hasClass
方法,而不是检查和等同类属性值,如果需要,可以在将来向option
添加更多类。
$('#country').change(function() {
var $selectedOption = $(this).find('option:selected'),
$hiddenDiv = $('#hiddendiv');
$selectedOption.hasClass('warning') ? $hiddenDiv.show() : $hiddenDiv.hide();
});
演示:JSFiddle