0

たとえば、私はこのXMLを持っています:

<data>
    <area>
        <state>SABAH</state>
        <parlim>P1</parlim>
        <name>Alice Smith</name>
    </area>
    <area>
        <state>SABAH</state>
        <parlim>P2</parlim>
        <name>John Smith</name>
    </area>
    <area>
        <state>SABAH</state>
        <parlim>P3</parlim>
        <name>Peter Smith</name>
    </area>
    <area>
        <state>SARAWAK</state>
        <parlim>P4</parlim>
        <name>Paul Smith</name>
    </area>
</data>

私はそれをjqueryでhtmlテーブルに解析しています:

 $.ajax({
  type: "GET",
  url: "parse.xml", 
  dataType: "xml",
  success: function(xml) {
   $(xml).find('area').each(function(){
    var Col0 = $(this).find('state').text();
    var Col1 = $(this).find('parlim').text();
    var Col2 = $(this).find('name').text();
    $('<tr></tr>').html('<td>'+Col0+'</td><td>'+Col1+'</td><td>'+Col2+'</td>').appendTo('#chart');
   });
  }
 });
});

状態SABAH(最初の3つの結果)の結果のみを表示するようにするにはどうすればよいですか?前もって感謝します

4

1 に答える 1

0

変化する

$(xml).find('area').each(function(){
    var Col0 = $(this).find('state').text();
    var Col1 = $(this).find('parlim').text();
    var Col2 = $(this).find('name').text();
    $('<tr></tr>').html('<td>'+Col0+'</td><td>'+Col1+'</td><td>'+Col2+'</td>').appendTo('#chart');
});

$(xml).find('area').each(function(){
    var Col0 = $(this).find('state').text();
    // check if Col0 = SABAH
    if (Col0 === 'SABAH') { 
       var Col1 = $(this).find('parlim').text();
       var Col2 = $(this).find('name').text();
       $('<tr></tr>').html('<td>'+Col0+'</td><td>'+Col1+'</td><td>'+Col2+'</td>').appendTo('#chart');
    }
});

これは、ifステートメントを使用してstateタグ内のテキストをチェックし、続行するかどうかを決定します

于 2013-03-20T09:00:11.183 に答える