首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >为什么Chrome浏览器中的翻译会禁用网页中的提交按钮?

为什么Chrome浏览器中的翻译会禁用网页中的提交按钮?
EN

Stack Overflow用户
提问于 2020-01-08 12:00:44
回答 1查看 234关注 0票数 2

我有一个web应用程序,它使用老式的HTML表单向服务器提交信息。最近有人指出,该系统不能在Chrome的翻译中工作。(系统为用户提供了自己的内部翻译,但偶尔也会有人想要将另一种语言翻译回英语以供查看。当我在Chrome浏览器中查看另一种语言并将其翻译成英语时,我收到了抱怨,系统无法正常工作,果然没有。)

我想我通过在<span class="notranslate"></span>中嵌入提交按钮解决了这个问题,但我想知道为什么翻译一开始就会禁用提交按钮。它们是基本的<input type=submit value="[label on button]" ... />。如果按钮不在not范围内,Chrome将翻译value属性(按钮上的文本标签)。但不知何故,这似乎禁用了它们。

EN

回答 1

Stack Overflow用户

发布于 2020-12-08 00:09:29

按钮未被禁用。问题是您的表单将POST/获取按钮中的值。如果用户选择它们为Chrome中的翻译,那么它们可能不符合检测成功的表单提交所需的条件。

例如,在您的表单中有一个按钮:

代码语言:javascript
复制
<input type=submit value="Continue" ... />

Google Chrome将其翻译成德语:

代码语言:javascript
复制
<input type=submit value="Fortsetzen" ... /> 

它将提交此转换后的值。但是,您的提交检测代码是(例如在php中):

代码语言:javascript
复制
if (isset($_POST["submit"]) && $_POST["submit"]=="Continue") 

因此表单将被提交,但值将不匹配。

在我看来,这将破坏互联网的大部分,而不仅仅是你的系统。

顺便说一句,谢谢你的建议:<span class="notranslate">

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/59639252

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档