首页  >  问答  >  正文

不再允许从右到左的文本输入的方法

<p>如何在输入框中防止或至少检测从右到左的文本输入(如阿拉伯语或希伯来语)?</p>
P粉021854777P粉021854777432 天前474

全部回复(1)我来回复

  • P粉541796322

    P粉5417963222023-08-16 10:30:41

    您可以尝试使用input标签的dir属性来指定文本方向。

    <input type="text" dir="ltr" placeholder="在此输入...">

    如果这不能解决您的问题,您可以使用下面的javascript交互检查片段来实现。

    <input type="text" id="textInput" placeholder="在此输入...">
    <div id="result"></div>
    
    <script>
    const inputElement = document.getElementById('textInput');
    const resultElement = document.getElementById('result');
    
    inputElement.addEventListener('input', function() {
      const text = inputElement.value;
      const rtlRegex = /[\u0600-\u06FF\u0750-\u077F\u0590-\u05FF]/;
    
      if (rtlRegex.test(text)) {
        resultElement.textContent = '检测到从右到左的文本。';
      } else {
        resultElement.textContent = '未检测到从右到左的文本。';
      }
    });
    </script>

    还要检查是否有其他CSS规则影响了您的input标签。

    回复
    0
  • 取消回复