通过替换替换文本来调整点击插入

时间:2012-06-05 02:14:16

标签: javascript html click

我正在尝试修改此脚本:jQuery Example: Inserting text with drag n’ drop

目标是让我的用户点击图片缩略图,并在textarea中插入相应的降价图像代码。

我不熟悉JS,所以我知道剧本的内容正在发生在这里:

$('#ClickWordList li').click(function() {
    $("#txtMessage").insertAtCaret($(this).text());
        return false
    });

具体来说,那里有.text()位,但不知道如何改变输出以满足我对插入标记的片段的需要,而不仅仅是列表文本。

Markdown内嵌图像语法如下所示:![Alt text](/path/to/img.jpg)

我尝试将列表更改为带图像的div,然后更改为.insertAtCaret($(this).src);,但我将“未定义”作为插入文本。

1 个答案:

答案 0 :(得分:2)

$(this).src未定义,因为$(this)jQuery object,jQuery对象没有src属性。假设您的选择器中有一个图像元素,您可以尝试:

$("#txtMessage").insertAtCaret($(this).attr('src'));

.attr() jQuery方法,只给出一个参数,将返回匹配元素的给定属性值。

$("#txtMessage").insertAtCaret($(this)[0].src);

获取文字DOM元素的src

额外说明(如果需要)
{@ 3}} jQuery方法,如果没有参数,将返回this引用的元素内的所有文本,即事件的目标,在这种情况下,li内的#ClickWordList {1}}元素。

.insertAtCaret()drag 'n drop插件提供的jQuery对象的扩展函数。

return false将完全按照其说法执行操作,在所选元素的false事件处理程序中返回click,这只会取消事件并阻止其传播进一步冒泡DOM

对不起,如果有任何拼写错误。