0

ダイアログ ウィンドウから textarea の値を元の td の場所に戻そうとしています。

tbody は次のようになります。

<tbody class="facttbody">
    <tr class="factrow">
         <td>
            <input type="text" class="facttext" value="Replace this value" />
         </td>

ダイアログ ウィンドウの置換ボタンは次のようになります。

buttons: {
    "Replace": function (){
        var dialogtxt = $(".factlargetextarea").val();

        $(".factdata > tbody > tr:eq($(".facttext").index(this)) > td:nth-child(5)).html(dialogtxt);
        $(this).dialog("close");

この種の機能は、textarea 値がその td に返されるという点で機能しますが、td から入力タグも削除されます。私もこれを試しました:

$(".factdata > tbody > tr:eq($(".facttext").index(this)) > td > input:nth-child(4)).html(dialogtxt);

これもうまくいきませんでした。助言がありますか?ありがとう...

4

2 に答える 2

0

td内のその入力タイプを確実に削除します。そこで.html()を使用したため、その要素の html を書き換えています。

その代わりに、 を使用できます。append()関数これ:

  $(".factdata > tbody > tr:eq($(".facttext").index(this)) > td:nth-child(5)).append(dialogtxt);

入力要素の後に、そのtdにデータを追加します。

于 2012-06-20T19:57:10.517 に答える
0

もしも -

$(".factdata > tbody > tr:eq($(".facttext").index(this)) > td:nth-child(5)).html(dialogtxt)

「td」の内容全体を変更してから、次のようにします-

$(".factdata > tbody > tr:eq($('.facttext').index(this)) > td:nth-child(5)).find("input[type='text']").val(dialogtxt);

テキストボックスの値を変更する必要があります。2 番目のステートメントは、テキスト ボックスを検索し、メソッドをtd使用してその値を変更します。val

于 2012-06-20T19:57:51.083 に答える