Jquery将字符转换为ASCII代码以清理html元素

时间:2018-06-03 14:20:12

标签: jquery

我使用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码代替这些字符?

1 个答案:

答案 0 :(得分:0)

无需使用内联onclick或手动将字符串插入html字符串。或者担心如果你做了类似的事情就逃避:

&#13;
&#13;
$.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;
&#13;
&#13;

甚至更简单的版本而不使用$.fn插件方法

&#13;
&#13;
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;
&#13;
&#13;