【问题标题】:Django forms input restrictionDjango 表单输入限制
【发布时间】:2017-07-04 10:49:52
【问题描述】:
  tr_id = forms.CharField(required=False, max_length=20,
    widget=forms.TextInput(attrs={
        'class':'filter filter_tr_id',
        'placeholder':'TR ID'
    })
)

我想将此 Django 输入限制为仅限数字和下划线。我已经有了一个可以完成这项工作的 js 函数。如何在输入中添加 onkeyup 功能?

function number_only(id_tr_id) {
var regex = /[^0-9\._]/g; 
id_tr_id.value = id_tr_id.value.replace(regex,"");

}

有没有其他方法可以限制数字和下划线的输入?

【问题讨论】:

    标签: javascript django forms input


    【解决方案1】:

    是的,您可以在输入字段中添加模式属性

    tr_id = forms.CharField(required=False, max_length=20,
        widget=forms.TextInput(attrs={
            'class':'filter filter_tr_id',
            'placeholder':'TR ID',
            'pattern':'[0-9_]'
        })
    )

    【讨论】:

    • html 输入字段支持向输入字段添加限制的模式属性。可能是正则表达式可能是错误的,但这种方法会 krega.w3schools.com/tags/att_input_pattern.asp
    • 感谢@SHIVAM JINDAL。使用这种模式,我仍然可以添加字符串。如果输入确实符合模式,我如何在输入上发出警报?
    • 当您提交表单并且输入不符合正则表达式时会显示错误。
    • w3schools.com/tags/tryit.asp?filename=tryhtml5_input_pattern 尝试修改示例中的正则表达式并提交
    猜你喜欢
    • 2012-08-17
    • 2012-02-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-08-29
    • 1970-01-01
    • 2013-08-21
    • 1970-01-01
    相关资源
    最近更新 更多