Jquery 使用XSLT在DIV中插入纯文本
我正在使用XSLT创建一个动态菜单。在一个DIV中,我必须放置一个不是属性的文本 我的XLST:Jquery 使用XSLT在DIV中插入纯文本,jquery,css,xslt,Jquery,Css,Xslt,我正在使用XSLT创建一个动态菜单。在一个DIV中,我必须放置一个不是属性的文本 我的XLST: <xsl:template match="/MenuConfig"> <div data-sidebar> <--- PROBLEM!!! <ul class="sidebar list-unstyled"> <xsl:apply-templates />
<xsl:template match="/MenuConfig">
<div data-sidebar> <--- PROBLEM!!!
<ul class="sidebar list-unstyled">
<xsl:apply-templates />
</ul>
</div>
</xsl:template>
<xsl:template match="Menu | Item">
<li class="{@class}">
<a href="{@location}"><xsl:value-of select="@title"/></a>
<xsl:if test="Item">
<ul>
<xsl:apply-templates select="Item" />
</ul>
</xsl:if>
</li>
</xsl:template>
</xsl:stylesheet>
此JS函数是由第三方公司制作的,因此无法更改。
在运行XSLT转换时,我收到以下错误:
与元素类型“div”关联的属性名称“数据侧栏”必须后跟“=”字符
有可能吗?是否有其他方法将此值写入DIV?
我尝试过使用id=“data sidebar”
,但没有成功
谢谢您的xslt无效。改变
<div data-sidebar>
到
这样,
数据侧栏
将作为属性显示(内容为空)。JS现在可以工作了。您的xslt无效。应该是这样的。@joel-m-lamsen嗨,joel。我知道它是无效的。那是我的问题。我不知道该怎么说。感谢将有问题的代码更改为我上面建议的代码,看看会发生什么。它成功了。结果不是我所期望的,但是JS工作了,这就是问题所在。谢谢Joel.@JoelM.Lamsen你介意添加这个作为答案吗?然后,阿德里亚诺可以接受,事情就解决了。
<div class="row">
<div class="col-md-3">
<div data-sidebar>
<ul class="sidebar list-unstyled">
<li ><a href="home">Home</a></li>
<li ><a href="pensions/">Pensions</a></li>
<li ><a href="funds/">Funds</a></li>
<li ><a href="savings-and-investments/">Savings and Investments</a></li>
<li ><a href="life-insurance/">Life Insurance</a></li>
<li ><a href="customer-support/">Existing Customers</a></li>
<li ><a href="contact-u/s">Contact Us</a></li>
<li ><a href="about-us/">About Zurich Life</a></li>
</ul>
</div>
</div>
</div>
/**
* Mobile dropdown sidebar
* This will generate select with options from left menu for small and xsmall devices
* @return {void}
*/
mobileSidebar: (function(){
var current = '';
return function(){
if( !$('[data-sidebar] select').length ){
var $select = $('<select class="sidebar form-control"/>');
$('[data-sidebar] ul li').each(function(){
var $this = $(this);
var active = $(this).hasClass('active') ? 'selected' : '';
ETC...
<div data-sidebar>
<div data-sidebar="">