我想在加载时调用
标记。现在我不能调用该功能。它删除了该标记,并用单击按钮替换了该标记。
$('.test_button').click(function(){
$('#test').remove();
$('.panel').append('<p id="test" onload="myFunction();">No Data Available<p>');
});
function myFunction(){
alert('No data available');
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<div class="panel">
<p id="test">onload<p>
</div>
<input type="submit" class="test_button">
答案 0 :(得分:1)
除body
之外的HTML元素没有onload
事件。由于将元素添加到DOM是同步的,因此您可以在附加后调用myFunction
。如果希望在警报之前更改文本,则可以使用setTimeout
。
$('.test_button').click(function(){
$('#test').remove();
$('.panel').append('<p id="test"">No Data Available<p>');
setTimeout(myFunction);
});
function myFunction(){
alert('No data available');
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<div class="panel">
<p id="test">onload<p>
</div>
<input type="submit" class="test_button">