javascript - 限制输入到 text_field 中的字符

标签 javascript ruby-on-rails ruby-on-rails-3

我有一个文本字段,用户可以在其中输入 URL 字符串,该字符串不能包含空格或非字母数字字符(如果这是一种准确的放置方式)。

Rails 中是否有一种方法可以限制进入 text_field 本身,从而避免空格和字符,例如/":}{#$^@?

非常感谢。


澄清一下,唯一可能的字符是字母和数字。

最佳答案

这里的问题是 URL 字符串可以有斜杠 (/) 和井号 (#)。因此,您的正则表达式将非常复杂,以确保正确过滤字段的正确部分。但是对于纯字符过滤,您可以使用简单的正则表达式来删除任何非字母数字字符。

不确定任何特定于 ruby​​ 的东西,但在直接的 javascript 中:

<html>
    <body>
        <form>
            <input type="text" name="whatever" id="form-field" value="" />
        </form>
    </body>
    <script type="text/javascript">
        var oFormField = document.getElementById('form-field');
        oFormField.onkeyup = function() {
            oFormField.value = oFormField.value.replace(/[^a-zA-Z0-9]/, '');
        }
    </script>
</html>

关于javascript - 限制输入到 text_field 中的字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4057410/

相关文章:

javascript - 我正在研究黑暗模式偏好。 Windows应用程序

javascript - 将实体图深入到 2 系列条形图

javascript - 为什么渲染后调用componentWillMount?

ruby-on-rails - 在 Rails 中将数据公开为 XML 和 JSON

ruby-on-rails - 为什么我在一个模型上的 rspec Rails 测试需要 10 分钟?! (Rails 3.2/rspec 2/Guard/spork)

javascript - 停止要求 VR 权限的嵌入式 Vimeo 播放器

css - Will_paginate 不渲染 Ruby On Rails

ruby-on-rails - Rails - 为什么 OR 在这里不起作用?

ruby-on-rails-3 - 测试遗忘变量中的每个循环

ruby-on-rails - 按最高组排序 - rails