我有一个文本框,按钮和带有一些文字的列表框。
当我点击按钮时,如果我在文本中输入的文本与列表框中的文本匹配,那么我试图使用jquery突出显示该文本我使用了此代码。
Jquery代码
$("#btnhighlight").click(function () {
alert("yes");
var htext = $("#txthighlighttext").val();
alert(htext);
$("#lstCodelist").highlight('MD');
});
样式表我曾经高亮,我下载了添加到项目中的高亮插件
<style type="text/css">
.highlight { background-color: yellow }
</style>
任何人都可以帮我解决这个问题。或者如果我做错了? 可以
答案 0 :(得分:2)
也许你的问题是你的脚本在DOM准备好之前执行。
试试这个:
$(function (){
$("#btnhighlight").click(function () {
var htext = $("#txthighlighttext").text();
$('#lstCodelist').highlight(htext);
});
});
或将你的脚本放在身体末端。
PS。我猜你用过这个插件(jquery.highlight)
编辑: http://jsfiddle.net/yJmBu/这里有一个完整的例子
答案 1 :(得分:0)
此插件在其找到的文本周围生成跨度。选项标签不能包含任何html标签,因此以下内容(由您的插件生成)
<select>
<option><span class="highlight">Te</span>st</option>
</select>
是非法语法,浏览器将忽略它。
但是,如果我理解你的意图,那里有一些插件可以为你提供开箱即用的类似功能。
http://code.drewwilson.com/entry/autosuggest-jquery-plugin
有些证据表明不允许在选项中嵌套跨度。