0

xmlファイルを解析する次の関数があります。

<ul id="flussi">    
    <script type="text/javascript">
xmlDoc=loadXMLDoc("FLUSSI.xml") // Path to the XML file;
var M = xmlDoc.getElementsByTagName("ROAD");
for (i=0;i<M.length;i++){

//document.write("<div id='id'>"+xmlDoc.getElementsByTagName("ID")[i].childNodes[0].nodeValue+"</div>");
document.write("<li>"+xmlDoc.getElementsByTagName("NAME")[i].childNodes[0].nodeValue+ "</li>");
document.write("<li>"+xmlDoc.getElementsByTagName("SIM")[i].childNodes[0].nodeValue+ "</li>");
document.write("<li>"+xmlDoc.getElementsByTagName("REAL")[i].childNodes[0].nodeValue+ "</li>");
document.write("<li>"+ xmlDoc.getElementsByTagName("DIFF")[i].childNodes[0].nodeValue+"--"+"</li>");

}
 </script>
</ul>

これは、次のような値のリストを html ファイルに書き込みます。

<li> Ponte_Nuovo_sx</li>
<li>87</li>
<li>72</li>
<li>15--</li>

タグを自動インクリメントしたいのですliが、それでも解決策を見つけようとしています。
タグが関数によって生成されない場合、liタグが静的であれば、liタグをインクリメントできます。

私が取得したいのは(可能であれば):

<li id=1> Ponte_Nuovo_sx </li>
<ii id=2> 87 </li>

等々。

4

3 に答える 3

2
// Have this run after it's been written to the document
$(function() {
    $('ul li').each(function() {
        $(this).attr('id', ($(this).index() + 1));
    });
});

これはおそらく、php、python、または同等の方法で実行する必要があることに注意してください。

それ以外の場合は、増加する値を単純に処理し、Anubhab の回答で指定できます。

于 2013-07-02T11:19:32.300 に答える
0

あなたはこのようにすることはできません:

var count=0;
for (i=0;i<M.length;i++){

//document.write("<div id='id'>"+xmlDoc.getElementsByTagName("ID")[i].childNodes[0].nodeValue+"</div>");
document.write("<li id="+count+">"+xmlDoc.getElementsByTagName("NAME")[i].childNodes[0].nodeValue+ "</li>");
count++;
document.write("<li id="+count+">"+xmlDoc.getElementsByTagName("SIM")[i].childNodes[0].nodeValue+ "</li>");
count++;
//and so on
}
于 2013-07-02T11:20:05.147 に答える