我有以下html代码:
<input type="text" size="30" id="county" class="auto_input" autocomplete="off" />
<div id="l_county" class="autocomplete"></div>
与 jQuery 一起从 API 获取数据(它是地址自动完成表单) 当您在文本字段中写入内容时,会在文本字段下方弹出县/街道/城市/邮政编码列表(取决于文本字段),看起来是 html像这样:
<div id="l_county" class="autocomplete" style="display: block;">
<label id="s_county" class="suggestion">
Värmland
</label>
<label id="s_county" class="suggestion">
Västerbotten
</label>
</div>
我无法让 jQuery 在标签上触发点击事件。我试过了;
$('.suggestion').on('click', ...
$('.autocomplete').children().on('click', ...
$('.autocomplete > label').on('click', ....
还有一些我不记得了。没有任何效果。但
$('.autocomplete').on('click', ...
效果很好,但这并没有多大帮助,因为我需要来自 s 的数据。我迫切需要帮助,由于另一部分的并发症,我的工作超过了最后期限,而这个荒谬的问题使我无法进步。
编辑: 我发现了问题。对我来说,这是一个荒谬的错过。
$('body').on('click', '.suggestion', function() {});
这样可行。问题是标签是通过 .append() 动态生成的,这是浪费你的时间。我很抱歉,谢谢你,这确实间接地让我弄清楚了。