django - urlinput小部件的自定义错误消息

时间:2015-02-07 02:53:08

标签: python django widget modelform

django 1.7 尝试自定义在模型表单上触发的默认客户端验证消息。特别是urlinput小部件的错误消息(urlfield的默认值)。提交表单时,此错误似乎来自客户端验证 The target error message

我想更改"请输入网址"别的东西。我觉得我到处寻找但却无法找到它。

任何人都可以帮我指出正确的方向吗?

1 个答案:

答案 0 :(得分:1)

Html5中的url类型将显示所需的属性消息lilke this

Cross browser verbiage:
    Firefox: Please enter a URL.
    Chrome: Please enter a URL.
    IE: You must enter a valid URL

您可以使用setcustomvalidity

<form action="" method="post">
    {% csrf_token %}
    {{ form }}
    <input type="submit" value="Submit" />
</form>
<script type="text/javascript">
    document.addEventListener("DOMContentLoaded", function() {
    var elements = document.getElementsByTagName("INPUT");
    for (var i = 0; i < elements.length; i++) {
        elements[i].oninvalid = function(e) {
            e.target.setCustomValidity("");
            if (!e.target.validity.valid) {
                e.target.setCustomValidity("This field cannot be left blank");
            }
        };
        elements[i].oninput = function(e) {
            e.target.setCustomValidity("");
        };
    }
})
</script>