2016-11-07 7 views
1

私はあらかじめ定義された空のテーブルを持っています。私のAjax呼び出しでは、必要なデータを書きます。ユーザーが新しい情報を照会しようとすると、セルからデータを消去する必要がありますが、行とセルの構造は残しておく必要があります。Jqueryでテーブルセルからのみデータを消去するにはどうすればいいですか?

たとえば、すべての行を削除するので、.remove()およびempty()は機能しません。

私は$("#tblManifest tbody tr td").innerHTML=""を試しましたが、動作しませんでした。私はtbodyからセルのデータをクリアするだけです。

+0

' - おそらくあなたは、コード内で間違った何かをやっている、あなたは答え以下 –

+1

が正しい表示していません。しかし、私はここであなたを更新するためにコメントしています。あなたは正しい道にいましたが、あなたは小さな部分を欠いています。この行は '$(" tblManifest tbody tr td ")[0] .innerHtml =" "です。J-Queryセレクタは単一オブジェクトではないオブジェクトの配列を返します。 –

答えて

2

実際にマニュアルを読む必要があります。以下のコードは動作します:

$("#tblManifest tbody tr td").html("");  // Or 
$("#tblManifest tbody tr td").html(" "); // Add a non-breaking space. (Recommended) 
$("#tblManifest tbody tr td").empty();   // This 
+0

.emptyもうまくいくはずだと、OPは言っていません! –

+0

@JaromandaXこれは私が与えたものです。 –

+1

私はコメントしたので、私はあなたのコメントを追加して参照してください:p Wiggle 5:p –

0

あなたがしようとしました:

$("#tblManifest tbody tr td").html(""); 

それとも

$("#tblManifest tbody tr td").html(" "); 

0

私は$( "#tblManifest tbody tr td")innerHTML = ""を試しましたが、それは の仕事をしませんでした。

$("#tblManifest tbody tr td")は、jQueryオブジェクトでありdomではないので、innerHTMLは機能しません。

他の人がすでに解決策を掲載しているが、それでも、これはあなたが試してみることができるものであるとして:

$("#tblManifest tbody td").text(''); 
2

これは可能な解決策

<table id="tblManifest"> 
<thead> 
    <tr> 
     <td>Name</td> 
     <td>Age</td> 
    </tr> 
    </thead> 
    <tbody> 
    <tr> 
     <td>Jai</td> 
     <td>71</td> 
    </tr> 
    <tr> 
     <td>Veeru</td> 
     <td>72</td> 
    </tr> 
    </tbody> 
</table> 
<div id="btnContainer"> 
    <Button id='btn'>Click me for empty</Button> 
</div> 

    $('#btn').on('click',function(e){ 
    var tbl = $("table#tblManifest > tbody > tr"); 
    $(tbl).each(function(index,value){ 
    $(value).find('td').empty() 
    }) 
}) 

ことができます私はちょうどテーブルelmentをループしていますし、それらを空にしてください。

.empty`は、そのセレクタで動作するはず

Jsfiddle is here

関連する問題