在下面的脚本中,“my_theme”元素是目录列表的选择列表。如何使用jQuery在选择列表中更改所选项目的文本
当它的“change”事件被触发时,jquery被调用并触发一个“get”来确定所选文件夹是否有一个style.css文件。 get返回true/false。
所有这一切工作正常。我只是试图根据get的结果来确定如何装饰选择列表中的项目。
例如,如果它为false,我想让所选项目的背景变灰,并在选项名称标签上附加一些文本。
因此,如果列表中当前选定的项目是“alpha”,并且$ .get返回false,则文本应该变成“alpha(不活动)”。
$('#my_theme').change
(
function()
{
//check if this folder has a style.css file
$.get('<?php echo get_bloginfo('template_directory') ?>/getStyle.php', {theme: myImage}, function(data){doActive(data);});
}
);
function doActive(data){
if(active){
//if the stylesheet is missing, append the label with " (inactive)"
$('#my_theme :selected').text() = $('#my_theme :selected').attr('value') + ' (inactive)';
}
该选项的“value”属性与其标签相同。 }
+1这适用于文本,但是,我认为我需要测试select而不是text()节点的“值”它是持续的,第二次选择它变成(不活动)(不活动)等。 –
尝试从使用文本()更改为使用attr('value')。这似乎不起作用> if(!active) {$('#my_theme:selected')。text($('#my_theme:selected')。attr('value')+'(inactive)');} –
.attr('value')works。Thanks! –