在我的页面上,我随机输入了单词-FORM-。我想用两个短划线替换单词以获得可点击的div。目前我有一些有效但无法点击的代码。
$(document).ready(function(){
$formContainer = $('<div id="get-form">This is my div container container</div>').html();
document.body.innerHTML = document.body.innerHTML.replace('-FORM-', $formContainer);
$('#get-form').click(function(){
alert('Click!')
})
});
答案 0 :(得分:1)
.html()
获取元素的内部html,在这种情况下只是元素的内部文本。它没有获得外部html。您需要使用$formContainer[0].outerHTML
来获取完整的html字符串。
虽然在这种情况下你甚至不需要它,因为你没有理由将你的html字符串包装成jQuery对象,因为之后你从不使用jQuery对象。只需在替换中使用您的html字符串:
document.body.innerHTML = document.body.innerHTML.replace('-FORM-', '<div id="get-form">This is my div container container</div>');