0

入力には、次のような HTML があります。

<table>
   <tr>
         <td>
            <img ...>
         </td>
         <td>
            <img ...>
         </td>
         ...
   </tr>
</table>

しかし、最後のtdで:

<td>
    <img ...>
    <img ...>
<td>

質問: 2nd を削除するにはどうすればよいimgですか? PHP、JS、CSS を使用できます。

4

4 に答える 4

2
$dom = new DOMDocument();
$dom->loadHTML($yourhtmlstring);
$x = new DOMXPath($dom);
foreach($x->query('//td/img[2]') as $node) $node->parentNode->removeChild($node);
echo $dom->saveHTML();
于 2012-06-27T15:25:21.060 に答える
0

JQuery の remove 関数を使用する

$("table tr:last-child > img:nth-child(2)").remove(); //i think this might work...

JQuery の削除

編集

最後の画像ではなく2番目の画像を削除するように上記を変更

于 2012-06-27T15:26:49.997 に答える
0

HTML が HTML ページから来ているか、PHP で生成されている場合:
jQuery を使用したソリューション:

$(document).ready(function(){
    $.each($("#your_table_id td "),function(){

        if( $(this).find("img").length > 1 ) {
            $(this).find("img:gt(0)").remove();
        }
    });
});
于 2012-06-27T15:27:41.543 に答える
-1
<code>
<table class="table">
   <tr>
         <td>
            <img>
         </td>
         <td>
            <img>
         </td>
        <td>
            <img >
            <img >
         </td>
   </tr>
</table>
<script>$(".table tr:last img:last").hide();</script>
</code>
于 2012-06-27T15:31:29.730 に答える