如何使用动态创建内容中的变量onClick函数

时间:2014-01-20 18:30:45

标签: javascript html5

再次出现问题

这是我动态创建的内容:

var content =
      $('<div data-role="collapsible" id="set"' + naslov + '">'+
            '<h3>Sectionit ' + naslov + '</h3>'+
            '<p>' + opis + '</p>'+
            '<a data-ajax="false" href="#" onclick="poslinapri('+niz+')" class="ui-btn ui-shadow ui-corner-all"><div class="prostor1tr">More</div></a>'+
         '</div>');

问题是我想在onClick函数中传递一个sting而不是一个变量.... 让我们说var niz= "hello" ....但我希望它能够onclick="poslinapri('hello') ...

我用引号和双引号尝试了一些事情......但没有成功......所以有人可以帮助我吗?

感谢

2 个答案:

答案 0 :(得分:2)

你需要使用反斜杠来转义单引号,就像嵌入单/双引号的几个级别一样。

var content =
      $('<div data-role="collapsible" id="set"' + naslov + '">'+
            '<h3>Sectionit ' + naslov + '</h3>'+
            '<p>' + opis + '</p>'+
            '<a data-ajax="false" href="#" onclick="poslinapri(\''+niz+'\')" class="ui-btn ui-shadow ui-corner-all"><div class="prostor1tr">More</div></a>'+
         '</div>');

这是一个简单的例子来说明这一点

var content = 'Bob\'s Burgers';
alert(content);

将生成一个包含Bob's Burgers

的提示框

答案 1 :(得分:0)

您可以这样做(创建内容后):

content.find('.ui-btn').click(function() {
  poslinapri(niz)
});

因此,你不必写onclick="poslinapri('+niz+')"