javascript - jQuery单击事件在第一次单击时不起作用
问题描述
我在我的页面上使用代码。像这样:
$('#language_id').change(function () {
var urli = 'https://example.com/php/get_arch.php?language_id=' + language_id;
$.ajax({
type: "GET",
url: urli,
dataType: 'json',
success: function(response){
var options = '';
$.each(response.archs, function() {
options += '<option value="' + this.arch_id + '">' + this.name + '</option>';
});
$('#arch_id').html('<option value="0">- ' + selachitecture + ' -</option>'+options);
$('#arch_id').attr('disabled', false);
}
});
});
$('#arch_id').change(function(){
var version_id = $('#version_id :selected').val();
$('#selectBoxInfo').load('https://example.com/dl.php?fileName=' + arch_id + "&lang=" + lang);
return(false);
});
$('body').on('click', '.buttond a', function() {
alert("new link clicked!");
$("a").removeAttr("onclick");
});
我解释我的代码:选择可选时,它将创建一个按钮“下载”。此按钮由 Ajax 加载。我不想弹出这个按钮的功能。所以,我试图阻止这个按钮打开弹出窗口。问题是:第一次单击按钮时,我的 Javascript 不起作用。它仅适用于第二次单击。
我不知道这里有问题。我使用“开”来收听所有事件。
解决方案
用此代码替换您的代码..
$('#selectBoxInfo')
.load('https://example.com/dl.php?fileName=' + arch_id+"&lang="+lang
,function(){
$("a").removeAttr("onclick");
}
);
推荐阅读
- assembly - 如何使用引导加载程序中的程序集使 pc 发出哔声
- android - 如何在 React Native 中创建 Android 即时应用程序?
- java - 如何修改springboot配置参数并保存到配置文件
- javascript - 我无法让井字游戏的极小极大算法按预期工作
- google-chrome - 任何用于创建与 GMail 集成的 chrome 扩展的资源/教程?
- deep-learning - 是否有任何同时使用绝对和相对位置嵌入的 Transformer 模型?
- flutter - 如何发送列表
扑向火库 - android - onCreateLoader() 方法出现“不兼容类型”错误 (Android)
- android - 如何在android中创建布局或Or按钮的3D形状
- php - 将 php 版本从 7.3.27 升级到 8.0.9,windows 10 后 Apache 无法运行