【问题标题】:How to handle the conflict between Curly/Smart double quote(”) and Straight double quote(") in the HTML input field如何处理 HTML 输入字段中 Curly/Smart 双引号(”)和 Straight 双引号(”)之间的冲突
【发布时间】:2021-08-07 11:36:18
【问题描述】:

在我的网站登录页面上,存在与智能双引号(”)和直双引号(“)相关的问题。问题是我们有一个用户的密码具有直双引号(”)。例如,

Abcd"123

但在他的 iPad 上显示“无效用户”,同时输入相同的密码。在我的研究中,我发现 iPad 键盘输入密码为:

Abcd”123

你可以看到双引号之间的区别。它实际上显示的是“智能双引号”而不是“直双引号”。使用任何其他设备使用相同的用户凭据登录时,我无法生成问题。

有什么办法可以改变 iPad 键盘上的双引号吗? 或者我们是否需要添加任何额外的正则表达式代码来将智能双引号转换为网站源代码中的直双引号(C#)?

【问题讨论】:

  • 我也面临同样的问题。
  • 你修好了吗? @GregoryWilsonPullyattu

标签: html ios regex ipad special-characters


【解决方案1】:

这是由于smart quotes。直单引号会自动转换为智能引号。

如果您使用 UI 文本字段,则可以操作 smartQuotesType 属性。

如果您使用正则表达式验证,请将‘’ 添加到表达式中。

例如

[A-Za-z0-9'-] => [A-Za-z0-9‘’'-]

【讨论】:

    【解决方案2】:

    出现这个问题是因为 iPad 有不同类型的双引号,所以如果用户创建密码为 Abcd"123 并尝试使用 Abcd"123 登录,它将与第一个不匹配。这意味着它不是问题,因为两个密码不同,并且请不要在用户输入时尝试将双引号类型转换为我们需要的类型,因为用户可能很清楚这种类型的差异并且他已经给出了那个类型使用双引号来保证他的应用程序更安全。所以尽量使用 iPhone 的功能。

    您还可以通过按住 iPad 键盘上的双引号按钮来选择双引号类型。当您按住键盘上的双引号键时,它将如下图所示。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2020-05-23
      • 2011-11-16
      • 1970-01-01
      • 2011-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-09-19
      • 1970-01-01
      相关资源
      最近更新 更多