使用jQuery创建DOM元素
我有一个function
$(document).ready(function () { $("#btnhighlight").click(function () { var htext = $("#txthighlighttext").val(); $("#lstCodelist option").each(function () { var sp = $(this).text(); var sp1 = sp.split(' '); $.each(sp1, function (i, l) { if (l == htext) { var boldText = "" + htext + ""; $(document).append(boldText); } }); }); }); });
我更新了代码,但没有运气。 在这段代码中我需要创建al有一个DOM元素来应用黄色。
请任何人可以帮助我如何创建一个dom元素。
谢谢
我不明白你当前代码中的l
在哪里。 无论如何,你可以用这样的jQuery创建一个DOM元素: var myel = $('
') 。 然后你可以使用.appendTo()
等函数将myel
附加到DOM中的任何位置。
编辑
您似乎试图突出显示元素中的一些单词。 我怀疑这是否适用于所有浏览器,因为表单元素在CSS方面有点棘手。 您可以尝试这样的事情(未经测试):
$(document).ready(function () { $("#btnhighlight").click(function () { var htext = $("#txthighlighttext").val(); $("#lstCodelist option").each(function () { var sp = $(this).text(); var re = new RegExp("\\b" + htext + "\\b") sp = sp.replace(re, '$1', "gi"); $(this).html(sp); }); }); });
您还需要在页面上使用一些CSS,为.highlighted
定义样式
聊天后更新
我使用
代替 ,以排除表单元素样式的问题:
更新的js(如果小提琴被删除):
$(document).ready(function () { $("#btnhighlight").click(function () { var htext = $("#txthighlighttext").val(); //$("#lstCodelist option").each(function () { $("p").each(function () { var sp = $(this).text(); var re = new RegExp("\\b(" + htext + ")\\b") var sOpen = ""; var sClose = ""; var newhtml = sp.replace(re, sOpen + "$1" + sClose, "gi"); $(this).html(newhtml); }); }); });
像这样的东西?
$(document).append($('').css('color', 'yellow'));
这会在文档中添加一个颜色为黄色的新div。 如果你需要将它添加到特定元素,只需使用$('#myselector')
而不是$(document)
它很简单
var newEl = $(''); $('THE_ELEMENT_YOU_WANT_TO_APPEND_OR_ADD').append(newEl);