我使用jquery
动态创建标签和属性var mystring = "Let's do it";
var this element = $('<label onclick="$.fn.myshow(\''+ mystring +'\',false)"></label>');
和点击功能
$.fn.myshow() = function(arg1, arg2){
alert(arg1);
}
由于文本中的单引号(我们这样做),因此不会在此触发点击。有没有办法用ASCII码代替这些字符?
答案 0 :(得分:0)
无需使用内联onclick
或手动将字符串插入html字符串。或者担心如果你做了类似的事情就逃避:
$.fn.myshow = function() {
return this.each(function() {
$(this).click(function() {
alert($(this).data('string'));
})
})
}
var mystring = "Let's do it";
var $element = $('<label>',{text:'click me'}).data('string', mystring).myshow();
$element.appendTo('body')
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
&#13;
甚至更简单的版本而不使用$.fn
插件方法
var mystring = "Let's do it";
$('<label>',{text:'click me'}).click(function(){
alert(mystring)
}).appendTo('body');
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
&#13;