扫码关注官方订阅号
我的代码如下:
this is a test click me
请问各们大神,为什么$('#testId').click()并未起作用,input file没有弹出选择框?
认证高级PHP讲师
用户有行为触发才可以。
$('#testId').trigger("click");
那个方法名称用click确实会存在问题,举个例子<html> <body>
<button onClick="click()">hit me</button>
<script> function click() {
alert("123");
} </script> </body> </html> 你会发现点击没效果。至于你那个问题的话,先看看ajax能请求成功吗
你需要这样写 $(this).click();
jsonp返回的格式是什么样的,callback() ? 跨域请求返回的是方法名,不执行success的
实际上你并没有触发'.test',每次点击的实际上是'#btn'按钮, 两个方法: 1、监听'.test'改成监听'#btn':
$('body').on('click', '#btn', function(e){...});
2、更改dom,将<button id="btn"><span class="test">click me</span></button>改为:
<span class="test">click me</span>
根据button标签的定义,button标签里面包含的是button的内容,所以button里面不应该包含其他dom节点,题主这是乱写嵌套,显然浏览器不会处理button里面的节点,只当做是内容来处理,所以你给button里面的内容添加事件监听是永远无法触发的。另外,方法名是可以用click的,毕竟题主的click方法是全局的,而jQuery的click方法是jQuery里面的变量,两者不冲突
jsonp成功后调用callback,你看看你的callback是啥function吧
function click()中"click"是一个保留字,你试试使用其他的方法名
你触发click事件了吗?
试了下去掉ajax后在chrome可以调用input,firefox不行,应该是firefox下span的点击被button的点击覆盖了
微信扫码关注PHP中文网服务号
QQ扫码加入技术交流群
Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号
PHP学习
技术支持
返回顶部
用户有行为触发才可以。
$('#testId').trigger("click");
那个方法名称用click确实会存在问题,举个例子
<html>
<body>
<button onClick="click()">hit me</button>
<script>
function click()
{
}
</script>
</body>
</html>
你会发现点击没效果。至于你那个问题的话,先看看ajax能请求成功吗
你需要这样写 $(this).click();
jsonp返回的格式是什么样的,callback() ? 跨域请求返回的是方法名,不执行success的
实际上你并没有触发'.test',每次点击的实际上是'#btn'按钮,
两个方法:
1、监听'.test'改成监听'#btn':
2、更改dom,将<button id="btn"><span class="test">click me</span></button>改为:
根据button标签的定义,button标签里面包含的是button的内容,所以button里面不应该包含其他dom节点,题主这是乱写嵌套,显然浏览器不会处理button里面的节点,只当做是内容来处理,所以你给button里面的内容添加事件监听是永远无法触发的。
另外,方法名是可以用click的,毕竟题主的click方法是全局的,而jQuery的click方法是jQuery里面的变量,两者不冲突
jsonp成功后调用callback,你看看你的callback是啥function吧
function click()中"click"是一个保留字,你试试使用其他的方法名
你触发click事件了吗?
试了下去掉ajax后在chrome可以调用input,firefox不行,应该是firefox下span的点击被button的点击覆盖了