gpt4 book ai didi

javascript - Safari 忽略 onclick 事件中的提交更改

转载 作者:行者123 更新时间:2023-11-30 05:40:33 25 4
gpt4 key购买 nike

对于 Drupal 站点,我开发了一个相当简单的模块来防止用户多次按下提交按钮。当按下提交按钮时,它会被替换为一条小消息,以耐心等待。

这个问题在所有浏览器中似乎都可以正常工作,但 Safari 除外。

    $("input[id^='edit-submit']").click(function(e){
var message = Drupal.t('Please wait...');
$(this).hide();
$('<span>' + message + '</span>').insertAfter(this);
});

当我查看调试器时,我看到一个属性出现 style="display: none;"但 Safari 似乎忽略了它。当我手动(通过开发人员工具)添加显示时:无按钮消失。

我不知道jQuery doesn't run in Safari on form submit是相关的,因为当我在点击函数主体之间添加一个 console.log() 时,它会执行一次($(this) 值也指向正确的元素)但它不会响应该按钮上的任何更改。

似乎从您单击提交按钮的那一刻起,它就处于某种锁定状态 - 这也可以防止双重提交 - 但我想确定这是 safari 的标准行为,然后是一个可能困扰的错误 future 的我。

我尝试使用谷歌搜索某些关键字,但我找不到任何描述 Safari 中此行为的文档。

编辑:我还尝试删除(并分离)onclick 上的按钮,这会使按钮消失,但随后不再提交表单。

最佳答案

尝试使用:

.css('display', 'none');

关于javascript - Safari 忽略 onclick 事件中的提交更改,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21040110/

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