gpt4 book ai didi

javascript - 在 Javascript/JQuery 中添加项目的新手,无法弄清楚 document.ready() 或 on()

转载 作者:行者123 更新时间:2023-11-30 17:52:44 25 4
gpt4 key购买 nike

我是 jquery/javascript 的新手。我注意到添加项目的函数 A 可以工作,但函数 B 在调用函数 A 后停止工作。我可以通过在函数 A 中重新包含函数 B 来解决这个问题,但我发现这样做不够优雅。当然,还有另一种方法吗?我已经尝试添加 $document.ready(),但由于它包含在其中,我猜它只是在循环?

这是我目前所拥有的:

<script type="text/javascript" charset="utf-8">
$(document).ready( function () {

//Function A
$('a#create').click( function() {
$("#existing").append('<option value="'+portName+'">'+portName+'</option>').multiselect("refresh");
//multiselect is a plug-in that makes select option tags nicer to look at, on refresh the html is correctly parsed for Function B to continue working, however it does not work unless I re-call Function B here. Again calling $document.ready() here doesn't work either.
});

// Function B
$('a.view').click( function() {
alert();
});
});
</script>

我知道函数 B 正在调用 anchor 链接,但是函数 A 正确地为函数 B 的工作创造了这些条件。在正常的文档加载中,这不是问题。然而,在调用函数 A 之后,函数 B THEN 中断,除非我在函数 A 中包含函数 B。

我是否应该考虑创建一个调用所有其他函数来“刷新”它们的函数?我什至不确定问题是什么。我偶然发现了这个“修复”。

最佳答案

我不确定我是否理解你想做什么,但我认为你正在寻找的是:

<script type="text/javascript" charset="utf-8">
$(document).ready( function () {

//Function A
$('a#create').click( function() {

});

// Function B, event delegation
$('body').on('click', 'a.view', function() {
alert();
});
});
</script>

关于javascript - 在 Javascript/JQuery 中添加项目的新手,无法弄清楚 document.ready() 或 on(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18645642/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com