[英]How do I format my input field using replace regex with javascript and jQuery?
[英]How do I prevent writing url's inside my input field using jQuery validation?
我們使用https://jqueryvalidation.org/庫來驗證我們網站上的聯系表格。
詳細信息將發送至3rd party web service
jQuery("#contactform").validate({ // initialize the plugin
rules: {
name: {required:true},
email: {required:true},
phonenumber: {required:true}
},
submitHandler: function(form, evt) {
evt.preventDefault();
var name = jQuery('#name').val();
var email = jQuery('#email').val();
var phonenumber = jQuery('#phonenumber').val();
var contactform_url = jQuery("#contactform").attr('action');
jQuery.ajax({
type: "POST",
url: contactform_url,
cache: false,
data: {
name: name,
email: email,
phonenumber: phonenumber
},
beforeSend: function() {
}
}).done(function(data, textStatus, jqXHR) {
}).fail(function(jqXHR, textStatus, errorThrown) {
});
}
});
問題 :當前驗證無法阻止用戶在name
輸入字段中輸入url
所以var name = jQuery('#name').val();
可以具有https://www.google.com/
的值
您知道如何避免用戶在我們的name
輸入字段中輸入link
或url
,或者至少將網址轉換為string
?
任何幫助是極大的贊賞。 謝謝
嘗試使用以下代碼,希望它能為您服務
$('#name').on('input', function() {
var input=$(this);
if (input.val().substring(0,4)=='www.'){input.val('http://www.'+input.val().substring(4));}
var re = /(http|ftp|https):\/\/[\w-]+(\.[\w-]+)+([\w.,@?^=%&:\/~+#-]*[\w@?^=%&\/~+#-])?/;
var is_name=re.test(input.val());
if(is_name){
alert('valid');
}
}
else{
alert('invalid');
}
});
你的第二個條件是填補這里
var url = "google.com";
var lastCom = url.slice(-3);
alert(lastCom); // "com"
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.