[jQuery]解决动态生成input无法触发click事件的问题

4 篇文章 0 订阅

<div class='div_delServer'><input type="button" class="delServer" value="删除服务器"></div>
$('.delServer').click(function() {
    alert("ok");
});
原因:
异步导致绑定事件失败。

解决方法:
1、使用全局绑定事件
$(document).on("click",".delServer",function(){
    alert("ok");
});

2、对父元素绑定事件

第一种方法:

$(document).on("click",".div_delServer .delServer",function(){
    alert("ok");
});

第二种方法:

$(".div").on("click",".delServer",function(){
    alert("ok");
});

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
可以使用以下代码来实现创建表单、提交表单并下载文件: ```javascript // 创建表单元素 var form = $('<form></form>'); // 设置表单属性 form.attr('method', 'POST'); form.attr('action', 'your-url-here'); // 创建表单项 var input1 = $('<input>').attr('type', 'hidden').attr('name', 'input1').val('value1'); var input2 = $('<input>').attr('type', 'hidden').attr('name', 'input2').val('value2'); // 将表单项添加到表单中 form.append(input1); form.append(input2); // 将表单添加到文档中 $('body').append(form); // 提交表单 form.submit(function(event) { event.preventDefault(); $.ajax({ type: form.attr('method'), url: form.attr('action'), data: form.serialize(), success: function(response) { // 创建一个隐藏的 <a> 元素,并设置下载链接 var a = $('<a></a>'); a.attr('href', response.file_url); a.attr('download', response.file_name); // 将 <a> 元素添加到文档中,并模拟点击 $('body').append(a); a[0].click(); // 移除 <a> 元素 a.remove(); } }); }); ``` 在这段代码中,我们创建了一个表单元素,并设置了表单的属性。然后我们创建了两个隐藏的表单项,并将它们添加到表单中。接着我们将表单添加到文档中,并使用 `form.submit()` 方法来提交表单。在提交表单的回调函数中,我们使用了 jQuery 的 `$.ajax()` 方法来发送 AJAX 请求,并在请求成功后创建一个隐藏的 `<a>` 元素,并设置下载链接。然后我们将这个 `<a>` 元素添加到文档中,并模拟点击,从而触发文件下载。最后我们移除这个 `<a>` 元素。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值