十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
jquery的 text()仅能读取出xml中不含标签的文字部分。
成都创新互联坚持“要么做到,要么别承诺”的工作理念,服务领域包括:成都做网站、网站设计、企业官网、英文网站、手机端网站、网站推广等服务,满足客户于互联网时代的顺德网站设计、移动媒体设计的需求,帮助企业找到有效的互联网解决方案。努力成为您成熟可靠的网络建设合作伙伴!
而 html() 办法也绝对读不出xml中的标签。
现在给你两种解决办法:
办法一,不用ajax,而用jquery的load()办法。前提是你知道load()怎么用。
将你需要读取的的xml代码块外面套一层html标签,比如div什么的,再给他加个ID,比如:
info
div id="xxx"
小牛情侣纸巾套,很可爱的一对小情侣哦!br /
赶快领回家吧!br /
超软的面料,超可爱的造型,冷冷的冬天抱在手上也是br /
很享受的事情哦!/div/info
这样,用
$("选择器").load("xml文件的url #xxx")
就可以读出。
这办法有2种缺点。
一,这办法不是ajax,虽然有点像
二,需要改动xml原文件。
办法二,使用一小段jquery插件:
/**
* jQuery xml plugin - Converts XML node(s) to string
* Dual licensed under the MIT and GPL
* Copyright (c) 2009 Radim Svoboda
* @version 1.0.0
*/
jQuery.fn.xml=function(all){var s="";if(this.length)
(((typeof all!='undefined')all)?this:jQuery(this[0]).contents()).each(function(){s+=window.ActiveXObject?this.xml:(new XMLSerializer()).serializeToString(this);});return s;};
以上为插件代码。
使用以上代码后,就可以使用ajax读取xml文件中的文字和标签了。比如:
$.get('xml文件url',function(data){$('选择器').html($(data).find('info').xml(0))});
其中xml()括号里有两个参数0和1可以选。
0代表读取 info标签里面的内容
1代表读取 info标签以及标签里面的内容
这种办法,缺点暂时没发现。
好了,我写了那么多,分给我吧?
我大概明白了一下你的意思,不知道理解的对不对。先上图。
html代码:
input type="radio" name="answer" value="a" /a
textarea style="display:none;" rows="1"/textarea
br/
input type="radio" name="answer" value="b" /b
textarea style="display:none;" rows="1"/textarea
br/
input type="radio" name="answer" value="c" /c
textarea style="display:none;" rows="1"/textarea
百度编辑器把我的br/弄没了,上面两个空行都是一个br/。
js代码:
$(function(){
$("input[name=answer]").bind("click",function(){
$("textarea:visible").hide();
$(this).next("textarea").show();
});
});
效果图:
选择后:
不明白的追问。
\n是JS换行符的转义符,BR标签是HTML的换行标签.
我试过了
第一个就像获取之后转义了,所以没有换行
第二个,根本就没有替换,本来就是换行的。所以还是换行。
alert("hello br world"); 根本不换行