2016-07-01 16 views
1

を生成しました表示されます。ただし、ボタン<td>ラッパーはありません。jQueryの全体を追加していないが、私はこのコードを持っているHTML(TDタグ)

出力例:

<tr> 
    <input class="form-control input-sm text-quantity" type="text" placeholder="Input something or delete me!" value="444"> 
    <input class="form-control input-sm text-price" type="text" placeholder="Input something or delete me!" value="44"> 
    <td> 
    <button class="btn btn-danger btn-sm btn-block delete-btn" type="button">Delete</button> 
    </td> 
</tr> 

私は何かを明らかに見逃していますか?誰かが正しい方向に私を指すことができれば、それは非常に高く評価されるだろう。

乾杯あなたがやった

+0

私が思うに、あなたは別の入力フィールドの内部で、入力フィールドを追加している:あなたがする必要がどのような

priceTextField.clone().find("input") 

は、まずこのような変数でこれを保存しています。では、これはどのように機能しますか? – Samir

+0

申し訳ありません@Samir、私はできるだけコードを書式化しようとしましたが、私は 'append()'を正しく行ったと確信しています。最初のコードブロックは '​​'タグの入力を効果的にラップし、2つ目のブロックは次々に2つのクローンを追加します。 – Nunnsy

答えて

0

priceTextField.clone().find("input").addClass("text-quantity")あなたが実際に入力フィールドを取り、それを追加。 <td>ではありません。セレクタ、jQueryオブジェクト、または要素によってフィルタリング マッチした要素の現在のセット内の各要素の子孫を取得する:あなたがfind()

https://api.jquery.com/find/

説明を使用するため。

あなたが必要とするものはend()なので、<td>を選ぶことができます。

https://api.jquery.com/end/

説明:現在 チェーンの中で最も最近のフィルタリング処理を終了し、その前の状態にマッチした要素のセットを返します。

+0

ああ、ありがとう!わかりました。私は 'end()'が元の変数とは対照的に 'clone()'メソッドに返すことをテストしました。だから完全に動作します! – Nunnsy

0

あなたが唯一の入力要素を追加している.end()

priceTextField.clone().find("input").addClass("text-quantity").end() 
+0

これを使用しました。完璧でした。ありがとうございました! – Nunnsy

0

を使用してみてください。これはjQueryの動作です:

この最初の例は、前に作成した "td"のクローンを返します。

priceTextField.clone() 

しかし、これを行うと「入力」要素が返されます。

var priceDataRow = $("<tr>"); 
var clonedTd = priceTextField.clone(); 
clonedTd.find("input").addClass("text-quantity"); 
$(priceDataRow).append(clonedTd); 
+0

@ himanshu-tyagiのソリューションを使用して終了しましたが、返信いただきありがとうございます! – Nunnsy

+0

@Nunnsyまあ、私は彼らの解決策がよかったと思います:) – Kamelkent

関連する問題