0

我希望我能想出一种更好的方式来表达我的问题,但基本上这就是我想要做的:在 HTML 文件中,我想用特定的字符串多次填充正文。例如:

<div>
    This is some content. XXX
</div>
<div>
    This is some more content. XXX
</div>
<div>
    This is even more content. XXX
</div>

然后,我想要一些脚本通过页面,并用递增的数字替换字符串的每个实例(在本例中为 XXX,但它可以是任何东西),所以,比如:

<div>
    This is some content. 001
</div>
<div>
    This is some more content. 002
</div>
<div>
    This is even more content. 003
</div>

这当然是一个简单的例子,你可能认为这很愚蠢,只需输入数字即可。但是显然这比我打算做的要简单,而且现在我正在构建的所有内容的顺序还没有决定,所以事情可以在页面上的位置上下移动,但是我希望所有数字按照它们在页面上出现的顺序排列。

所以,最后的想法:我非常确定有一种比我想象的更好的方法来做到这一点,方法明智(即,制作一个 XML 表或其他东西)。我绝对愿意接受任何关于如何做到这一点的建议,但我有点白痴,所以如果你的答案是“pff 这在 Ruby 中非常容易,只需使用 Ruby”,那并不会真正让我到达我需要的地方. 此外,如果已经回答了这个问题,那么很难想到如何用这个问题来搜索以前的答案,所以如果我在搜索时没有找到预先存在的答案,我提前道歉。

4

2 回答 2

4

您可以使用 CSS 计数器轻松完成此操作,示例如下:

CSS

ul {
    counter-reset:list;
}
li:after {
    counter-increment:list;
    content: " (" counter(list) ")";
}

有关一些更高级的示例,请访问MDN 文档页面

于 2013-05-07T00:07:44.210 回答
1

You could use PHP to achieve this. If you've had no experience with it, it does integrate with HTML easily. Basically you write your html as usual, but you name the file .php instead of .html. Then you insert php scripts as follows, for example: <p>I can count to <?php nextNumber(); ?></p>.

at the top of the page you should insert more script with a counter function:

<?php
$i = 1;
$places = 4;
function nextNumber() {
   GLOBAL $i, $places;
   print str_pad($i++,$places,'0',STR_PAD_LEFT);
}
?>

This may be better than CSS. It's not browser-dependant.

Change $places to the number of digits you'd like to have (for leading zeros)

于 2013-05-07T00:21:07.143 回答