晚上好。 我为输入字段创建了一个函数,要求用户为其帐户选择网址。
与我创建的数据库进行通信并完美工作的那一部分。也是使字母降低的那部分。
但是我不知道该如何接受特殊字符和空格。
我在互联网上找到了一些解决方案,但输入它可以调用第二个功能。我不想更改我的功能。我想以某种方式合并到现有功能中。
我的html是
<input type="text" name="urlcheck" value="" id="urlcheck" class="form-control" placeholder="Write your url. " required onkeyup="urlcheck()"/>
我的JS是
function urlcheck(){
var x = document.getElementById("urlcheck");
x.value = x.value.toLowerCase();
var urlcheck = $('#urlcheck').val();
if(urlcheck != '')
{
$.ajax({
url:"<?php echo base_url(); ?>portolio/check_url",
method:"POST",
data:{url:url},
success:function(data){
data.trim();
if(data == '1') {
$('#url_result').html('<label class="text-danger">Url is not free</label>');
} else {
$('#url_result').html('<label class="text-success">Url is free.</label>');
}
}
});
}
};
我找到的解决方案,但我不知道这是如何合并的:
<script type="text/javascript">
function blockSpecialChar(e){
var k;
document.all ? k = e.keyCode : k = e.which;
return ((k > 96 && k < 123) || k == 8 || (k >= 48 && k <= 57));
}
</script>
</head>
<body>
<form id="frm" runat="server">
<input type="text" name="folderName" onkeypress="return blockSpecialChar(event)"/>
</form>
所以...我需要帮助,如何在我的ajax函数中“插入”波纹管代码
var k;
document.all ? k = e.keyCode : k = e.which;
return ((k > 96 && k < 123) || k == 8 || (k >= 48 && k <= 57));
编辑: 在我的输入字段中,我不需要用户编写整个URL。只有最后一部分。例如,如果用户希望拥有example.com/myname。用户必须填写我的名字。我要检查!
答案 0 :(得分:1)
您无需为此任务编写JavaScript。只需使用pattern
属性即可。
尝试我可运行的代码段。输入非字母数字字符,然后单击提交。提交将停止。
<form>
<input type="text" placeholder="example.com/[your input]" pattern="[a-zA-Z0-9]+">
<button type="submit">Submit</button>
</form>
答案 1 :(得分:0)
使用我发现的这种模式。它仅接受网址。
<input type="text" name="urlcheck" value="" id="urlcheck" class="form-control"
placeholder="Write your url. " required onkeyup="urlcheck()" required="" data-bv-
regexp="true" data-bv-regexp-regexp="https?:\/\/(?:www\.|(?!www))[a-zA-Z0-9][a-zA-Z0-9-]+[a-zA-Z0-9]\.[^\s]{2,}|www\.[a-zA-Z0-9][a-zA-Z0-9-]+[a-zA-Z0-9]\.[^\s]{2,}|https?:\/\/(?:www\.|(?!www))[a-zA-Z0-9]\.[^\s]{2,}|www\.[a-zA-Z0-9]\.[^\s]{2,}"
data-bv-regexp-message="Invalid Url">