0

次のJQueryコードがあります。

    $(document).ready(function(){
        $(".translated").mouseenter(function(){
            $(this).html("<input type='text'/>");
        });
    });

そして<div class="translated">、テキストが含まれている多くのアイテムを含むテーブルがあります。divブロックのテキストをmouseenterイベントで入力項目に置き換える必要があります。できます。ただし、置換の過程で入力要素の属性も設定する必要があります。JS/ JQueryを初めて使用するため、どのように設定すればよいかわかりません。情報を教えてください。前もって感謝します。

更新:申し訳ありませんが、私の属性もJSで計算されており、一定ではありません。

更新2:アルゴリズム:1)divアイテムに入力アイテムを挿入します2)新しく挿入されたアイテムの高さを変更します

4

3 に答える 3

3

type="text"以下のように設定するので、残りの入力属性を設定するだけです。

$(this).html("<input type='text' /* other attributes */ />");

または以下のように使用します

$('<input />').attr({type: 'text'/*, more attributes*/});
于 2012-11-29T19:31:46.320 に答える
1
 var someVariable = 1 + 2;
 $(this).html("<input type='text' anotherAttribute='something' attrFromValue='" 
     + someVariable + "' />");
于 2012-11-29T19:33:10.337 に答える
0

記録のために、要素を作成するための特別なjQuery構文があります。

$("<input/>", {
    type: "text",
    height: 100
}).appendTo(this);

上記は、属性がに設定され、(CSS)がに設定されたinput要素を挿入します。typetextheight100px

ターゲット要素に追加される生成されたマークアップは次のとおりです。

<input type="text" style="height: 100px;">
于 2012-11-29T19:43:06.073 に答える