对于Javascript / jQuery,我是一个新手,所以希望你能帮助我。
我有一个文本框,大多数人都会将链接粘贴到其中。有没有一种很好的方法让文本框检测到链接已被粘贴(以http://
开头),然后在文本框中动态删除协议,而不必在事后按下按钮?
答案 0 :(得分:2)
您可以使用string.replace()
,基本的JavaScript,它实际上接受正则表达式,因此string.replace(/^http:\/\//,"")
就足够了。
答案 1 :(得分:2)
假设您希望在用户输入/粘贴它时立即将其删除:
让我们说,为了论证你已经给文本输入了id“url”:
$(document).ready(function(){
var timer;
$("#url").live("keyup",function(){
clearTimeout(timer);
timer = setTimeout(function(){
var textbox = $("#url");
if (textbox.val().indexOf("https://") == 0)
textbox.val(textbox.val().substring(8));
if (textbox.val().indexOf("http://") == 0)
textbox.val(textbox.val().substring(7));
},500);
});
});
正如@Marcel Korpel在评论中提到的,现在应该照顾你想要的东西。
答案 2 :(得分:2)
这将检查以确保它以http://开头,然后替换它。
$(document).ready(
function()
{
$("#url").change(
function()
{
var textbox = $(this);
if (textbox.val().indexOf("http://") == 0)
textbox.val(textbox.val().substring(7));
});
});
这里还有一个工作示例: http://jsfiddle.net/epwDA/4/