重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
这个高亮,实质上是把12变成span style="backgroud: yellow"12/span。
成都创新互联长期为数千家客户提供的网站建设服务,团队从业经验10年,关注不同地域、不同群体,并针对不同对象提供差异化的产品和服务;打造开放共赢平台,与合作伙伴共同营造健康的互联网生态环境。为文水企业提供专业的成都网站建设、做网站,文水网站改版等技术服务。拥有10年丰富建站经验和众多成功案例,为您定制开发。
那么只要做一个替换就可以了。但是需要考虑两点:
需要被替换的内容,必须是标签里的内容,不能是属性。比如,不能把div width="100%" color="#12fe45"这里的100,12,45都不应该被替换。
需要被替换的内容,不能是script标签里的内容(理所当然的吧)。比如scriptvar a=123; xxx/script 这里的123不应该被替换。
所以,考虑到以上,最终的做法必须是遍历所有的标签,然后如果标签里没有标签的时候,才把标签里的文字作替换。
(function hilightNumber(jqObj) {
// 不能替换script标签里的数字
var domObj = jqObj[0];
if (domObj.nodeName == "SCRIPT") {
return;
}
// 如果标签里有标签,我们也不作替换,而是递归进去遍历内层的标签。
var children = jqObj.children();
if (children.length 0) {
for(var i=0; ichildren.length; i++) {
hilightNumber($(children[i]));
}
} else {
// 标签里只有文字,没有内层标签的时候,才做替换,
// 把123替换成带颜色的标签内包含123,就实现了高亮。
var hilightedHtml = jqObj.html().replace(/([+\-]?[0-9]+(\.[0-9]+)?)/g, "span style='background:yellow;'$1/span");
jqObj.html(hilightedHtml);
}
})($("body"));
注意!这个不能解决全部的问题,但大部分情况应该可以用了。
不能解决的例子:
p我是诡异的段落2333,但是我里面竟然还有子标签!b这里是加黑的字666/b。span这里是其它颜色12345的哈哈/span/p
如果是上面这样的HTML,2333可能不会被加亮。。。毕竟p里还有内层标签b和span。。。
方法一,使用表单序列化方法实现:
var result = $("#abc").serialize();
方法二,获取表单内容后拼接:
var result = "userName=" + $("#abc input[name='userName']").val() + "password=" + $("#abc input[name='password']").val();
//on('第一个参数是事件名称,如click,change等', '第二个参数表示执行的方法')
$('body').on('click', function(){
});
//查看更详细的说明
//hover('第一个鼠标移动到某个元素执行方法', '第二个鼠标移开当前DOM节点后执行方法')
$('body').hover(function(){
//鼠标移动到body上执行
}, function(){
//鼠标移开body后执行
});
//查看更详细的说明
附上jquery中文API文档,
Jquery 中选择 id,classname,元素等时可以参考Jquery手册。
$("#123")//id为 "#" 符号开头
$(".123")//类名则为 "."符号开头
$("input")//元素则填元素名称
$("#123 .123 p")//嵌套选择id为123中classname为123中的p元素,
$('input[id^="123"]')//选取以id 123开头的input元素
建议你看下jquery中文参考手册
方法/步骤
新建一个html文档,可以用任何文本编辑器,这里演示用Dreamweaver软件,新建并保存html文档。
然后写html代码,写一个input文本输入框id为inputId,然后写一个按钮,id为buttonId,这里要做的是点击按钮就为输入框赋值。
然后把输入框和按钮的css样式写好,当然不写样式也可以,这里主要是为了美化一下。
最后就是关键步骤了,引入jQuery文件,注意路径一定要正确,然后写jQuery代码,其实就用到了val(“这里是赋值内容”)方法。
打开浏览器测试一下,点击按钮之后输入框内自动输入了赋值的内容。