【发布时间】:2011-01-14 01:03:22
【问题描述】:
我想用图片替换我的单选按钮,这是系统生成的html,
<ul>
<li><input type="radio" name="id" value="68135112" title="Default / Default Title / Small" class="button-replace-size"/></li>
<li><input type="radio" name="id" value="70365102" title="Default / Default Title / Medium" class="button-replace-size"/></li>
<li><input type="radio" name="id" value="70365152" title="Default / Default Title / Large" class="button-replace-size"/></li>
<li><input type="radio" name="id" value="70365162" title="Default / Default Title / Extra Large" class="button-replace-size"/></li>
</ul>
我希望 jquery 脚本检查单选输入中的标题文本是否包含某些关键字或字母,然后相应地替换该单选按钮。
例如,如果发现单选按钮包含关键字-'Small',或'small',甚至's',则将此按钮替换为<a>标签,该标签将在css中设置为图片,
<a href="#" id="button-s" class="button-size hide-text" title="Click this to select size Small">S</a>
如果找到关键字 - 'Medium' 或 'medium',情况也是如此......
这是我遇到的 jquery,
if ($(':contains("Small")',$this_title).length > 0)
下面是我目前发布的脚本...
this.replace_element_radio_size = function(){
/* radio button replacement - loop through each element */
$(".button-replace-size").each(function(){
if($(this).length > 0)
{
$(this).hide();
var $this = $(this);
var $this_title = $this.attr('title');
if ($(':contains("Small")',$this_title).length > 0)
{
$(this).after('<a href="#" id="button-s" class="button-size hide-text" title="Click this to select size Small">S</a>');
}
}
}
}
请给我一些想法...谢谢。
【问题讨论】:
-
请参阅下面的答案 - 只需注意 $(':contains("Small") 将选择包含文本“Small”的任何节点,而不是每个属性包含文本的节点。
标签: jquery title contains image-replacement