0

CKEDITORのonclick-eventを開きたいのですが、 ckeditordivの div コンテンツが必要ですが、どういうわけかこれは機能していません。textarea

事前に感謝し、私の下手な英語で申し訳ありません

function createEditor() {

    $('DIV').click(function(event) {
        var id1 = event.target.id;
        //alert(id1);

        document.getElementById("editor1").value = '';
        var newtext = document.getElementById(id1).innerHTML;
        alert(newtext);
        document.getElementById("editor1").value += newtext;
    });

    document.getElementById("contents").style.display = "block";
}
4

4 に答える 4

0

このソリューションは、jQuery にさらに依存します。divまず、 aがクリックされるたびにこの関数がトリガーされるようにする場合は、 aがクリックfunction()されるたびにイベントがトリガーされるため、 を削除する必要はありませんdiv

これで問題が解決するはずです:

$('div').click(function(e) {
    $id1 = $(this).attr("id");
    alert($id1);

   $("#editor1").val(' '); //Are you sure you want to empty your textarea?
   $newtext = $("#"+$id1).html();
   alert($newtext);
   $("#editor1").val($newtext); //Because when you append the newtext it won't append but replace the text it's already on this.

   $("#contents").css("display","block");
});

関数を使用する同様の例のフィドルを次に示し ます

于 2012-11-19T14:24:18.320 に答える
0

createEditor() 関数を削除して試してください

 $('DIV').click(function(event) {
    var id1 = event.target.id;
    //alert(id1);

    document.getElementById("editor1").value = '';
    var newtext = document.getElementById(id1).innerHTML;
    alert(newtext);
    document.getElementById("editor1").value += newtext;
});

document.getElementById("contents").style.display = "block";
于 2012-11-19T13:40:22.247 に答える
0

クリックされた div のテキストだけが必要で、jQuery を使用している場合は、

$("div").click( function() {
    var newtext = $(this).text();
    $("#editor1").text( newtext );
});
于 2012-11-19T14:28:59.557 に答える
0

これを試して、テキストエリアにデータを追加してください。

$("#editor1").val(newtext);

または使用

$('#editor1').append(newtext); 
于 2012-11-19T14:23:10.403 に答える