【问题标题】:Two elements per Row XSL每行 XSL 两个元素
【发布时间】:2016-06-16 11:19:56
【问题描述】:

我正在使用 xml 和 xslt 1.0。 假设有我的xml结构:

<people>
  <person></person>
  <person></person>
  ...
</peoble>

那我想这样显示:N is the node "person" .

我用的是bootstrap,网页内容是这样设计的:

<div class="row">
  <div>Person1</div>
  <div>Person2</div>
</div>

我的问题是,我不知道如何将两个元素放在同一行中。不能放第一个,后面放第二个,因为标签行一旦关闭就不能再打开了,结果是:

Row 1: N1

Row 2: N2

我想要:

Row 1: N1 N2

Row 2: N3 N4

谢谢

【问题讨论】:

  • 那你用 XSLT 做什么呢?将其添加到您的问题中,以便我们告诉您您做错了什么。
  • 请展示您现有的 XSLT 并将预期结果作为代码发布,而不是作为图片。

标签: html xml twitter-bootstrap twitter-bootstrap-3 xslt-1.0


【解决方案1】:

你可以使用 Jquery .slice() 来减少匹配元素的集合:看看我的例子

var divs = $("div > div");
   for(var i = 0; i < divs.length; i+=2) {
    divs.slice(i, i+2).wrapAll("<div class='row'></div>");
}

var persons = $("people > person");
   for(var i = 0; i < persons.length; i+=2) {
    persons.slice(i, i+2).wrapAll("<div class='row'></div>");
}
.row { 
  border: solid 1px #000; 
  padding: 5px;
  width: 120px;
}

person {
  margin:3px;
  border: 1px solid #000;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div>
        <div>person1</div>
        <div>person2</div>
        <div>person3</div>
        <div>person4</div>
        <div>person5</div>
        <div>person6</div>
</div>


<people>
  <person>person1</person>
  <person>person2</person>
  <person>person3</person>
  <person>person4</person>
  <person>person5</person>
  <person>person6</person>
</people>

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2022-01-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-07-18
    • 1970-01-01
    • 2021-09-11
    • 2011-10-16
    相关资源
    最近更新 更多