2012-11-19 35 views
0

我想开就divclick-eventCKEDITOR,并希望在CKEditor的 那textarea在div内容,但不知何故,这是行不通的。获得每次点击的文本区域动态文本上的div

在此先感谢,和对不起我的英文不好

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"; 
} 
+2

“**不知何故这是不工作**” - >这是你需要精心:) – mtk

+0

粘贴相应的HTML,和你确定的部分,你们有整个页面上有1个div?可能还有其他的div ..因此你会看到意想不到的结果.. – mtk

+0

@mtk老兄给我你的邮件ID,以便我可以发送给你整个代码,如果你能得到那么多tym ..或者看看这个小提琴http://jsfiddle.net/rbPNV/15/ –

回答

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"; 
+0

试过..但不工作,反正谢谢你的回复 –

+0

尝试使用lilve()$(“p”)。live(“click”,function() (“数据”); }); – Daxen

+0

@Nishant你能够进入点击事件功能? “alert”语句说什么? – mtk

0

试试这个将数据添加到textarea的。

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

或使用

$('#editor1').append(newtext); 
+0

不工作...伤心 –

+0

什么是大桶js控制台显示?它会给出任何错误...做检查。 – mtk

+0

不,它不显示任何错误,实际上有时它显示的值在textarea有时不.. –

0

该解决方案将更多地依赖于jQuery的。首先,如果您希望在点击某个div时触发此功能,请删除您的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"); 
}); 

这里有一个fiddle使用你的函数的一个类似的例子:

+0

感谢您的答复,但此脚本给予警报为“未定义”和“空” –

+0

不在小提琴中,如果发生这种情况你的代码你的错误是在别的地方 –

+0

你确定你已经把你的函数放在$(document).ready()块中吗? –

0

如果你只是想点击的div的文字和你使用jQuery的尝试

$("div").click(function() { 
    var newtext = $(this).text(); 
    $("#editor1").text(newtext); 
});