[英]Append input box with JQuery
我试图将文本添加到ID为#shouttext的字段中,但是我需要从onclick事件中删减值,该事件仅位于('并且还删除')符号之后。
所以如果我有
<img src="images/smilies/at.png" alt="" title="" class="smilie smilie_9 smilie_pointer" onclick="MyBBEditor.insertText(':at:');">
我想得到
:at:
并将其添加到带有#shouttext id的输入中。 以下是我的代码,该代码无法正常工作-我认为它已被我试图删除的定义的onclick值阻止。
<script type="text/javascript">
$( document ).ready(function() {
$('.smilie').click(function()
{
var s1,s1;
s1=attr("onclick");
s1=s1.replace('MyBBEditor.insertText(\'', '');
s2=s1.replace('\')', '');
$('.smilie').attr('onclick','').unbind('click')
$('#shouttext').val($('#shouttext').val()+s2);
})
});
</script>
感谢您的任何帮助!
您也可以尝试:
var str = $(".smilie").attr("onclick").split("'")[1];
获得:at:
在这里尝试:现在提琴,您可以在这里使用它:
$('.smilie').unbind("click");
$('.smilie').click(function() {
var str = $(".smilie").attr("onclick").split("'")[1];
$('#shouttext').val($('#shouttext').val() + "" + str);
});
或@eg_dac怎么说,您可以使用$.on()
覆盖click
事件。
而不是在点击中解除绑定,您可以
$(".smilie").attr("onclick", ""); // clear the already declared attribute.
$(".smilie").on("click", function(){
$('#shouttext').val($('#shouttext').val()+s2);
});
此处的示例http://jsfiddle.net/meougz1L/
$("img").attr("onclick","");
$("img").on("click", function(){
alert("click event overridden");
});
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.