jQuery 验证插件 - 删除 URL 的“http://”要求
jQuery Validation Plugin - remove 'http://' requirement with URL's
我希望在不需要用户输入"http://"的情况下验证URL。在下面的表格中,必须输入"http://"才能提交表格。我不知道该怎么做。任何帮助将不胜感激。
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>Makes "field" required and a url.</title>
<link rel="stylesheet" href="http://jquery.bassistance.de/validate/demo/site-demos.css">
</head>
<body>
<form id="myform">
<label for="field">Required, URL: </label>
<input class="left" id="field" name="field">
<br/>
<input type="submit" value="Validate!">
</form>
<script src="http://code.jquery.com/jquery-1.9.1.min.js"></script>
<script src="http://jquery.bassistance.de/validate/jquery.validate.js"></script>
<script src="http://jquery.bassistance.de/validate/additional-methods.js"></script>
<script>
// just for the demos, avoids form submit
jQuery.validator.setDefaults({
debug: true,
success: "valid"
});
$( "#myform" ).validate({
rules: {
field: {
required: true,
url: true
}
}
});
</script>
</body>
</html>
编辑:采纳了伊舍伍德的建议:
var txt = $('#website').val();
var http = txt.indexOf('http://');
if (http > -1) {
$('#website').val(txt);
} else {
$('#website').val('http://' + txt);
}
为什么不将其添加到用户的URL中?无论如何,URL 不是没有协议的 URL(无协议 URL 除外,但它们仍然有"//"(。
$('#myform').on('submit', function() {
var myURL = 'http://' + $('#field').val();
$('#field').val(myURL);
});
您可以将
addMethod 与 REGEX 一起使用,只需将方法中的类添加到您的输入中即可http://jqueryvalidation.org/jQuery.validator.addMethod/
相关文章:
- 要求输入在数据列表中
- 要求未定义JS回调参数
- Meteor如何接收HTTP请求
- 当脚本由system.js加载时,如何要求('electron')
- 要求定义另一个文件中的对象
- 在我的情况下,如何进行http请求
- //而不是在src=“”上使用http://"属性
- 我无法使用angularJs($http)访问服务器
- AJAX简单错误.XMLHttpRequest无法加载http://localhost/mpl/getPage.php.
- 如何将PHP get查询转换为Meteor's HTTP.get()
- 角度异步http自动完成
- 什么's本地node.js服务器和python简单http服务器之间的区别
- 角度http服务器页面刷新404s
- 这是什么“;要求“;事情
- jQuery 验证插件 - 删除 URL 的“http://”要求
- 如何通过$http,$scope按要求
- 让 Chrome 不要在输入中要求输入“http://”
- 要求Chrome处理来自Chrome扩展的HTTP请求
- 可接受将要求(fs/http/等)保存在子模块的全局命名空间中
- 在Node JS中如何传递一个变量到http.回调的要求