有什么方法可以将文本添加到输入字段?对输入字段添加文本
因此,可以说不是:
<input type="text" id="val" name="val" value="http://" style="width: 140px;" />
与“http://
”已经写好,有一个“http://
”自动添加,当有人类型的地址,如果有人类型完整的URL“http://www.****.com
”的HTTP不应该被添加,所以它不会加倍。
任何人有任何想法?我无法使用PHP。
有什么方法可以将文本添加到输入字段?对输入字段添加文本
因此,可以说不是:
<input type="text" id="val" name="val" value="http://" style="width: 140px;" />
与“http://
”已经写好,有一个“http://
”自动添加,当有人类型的地址,如果有人类型完整的URL“http://www.****.com
”的HTTP不应该被添加,所以它不会加倍。
任何人有任何想法?我无法使用PHP。
为什么不只是添加http://
如果它失踪?
var input = document.getElementById('val').value;
if (input.search('http://') === -1) {
input = 'http://' + input;
}
编辑:如果你需要允许HTTPS也改变搜索到一个正则表达式:
if (input.search(/https?:\/\//) === -1) {
附加:
document.getElementById('val').value += "http://www.google.co.uk";
删除重复:`
document.getElementById('val').value.replace("http://http://","http://");
这样,如果他们做到了类型http://
两次,它只是圣雷莫对了。
您的'document.getElementById' ID字符串需要关闭引号。 –
他意思是preappending。 – OptimusCrime
固定 - 谢谢。 – vimist
我强烈建议使用脚本框架,例如jQuery(http://jquery.com)来访问输入字段。
在这里看到: http://jsfiddle.net/5BLrU/
下面是参考
$(function() {
$("#some-form").submit(function(){
var $val = $("#val");
var url = $val.val();
if (!/^http:\/\/.+/.test(url)) {
$val.val("http://" + url);
}
// remove this to submit the form!
return false;
});
});
JS代码下面的示例假定目标元素的ID是VAL。
// Store current element
var elem = document.getElementById('val'),
// Store current value
currentValue = elem.value;
// Prepend something if not present
if (currentValue.match(/^http:\/\//) == false) {
currentValue = 'http://' + currentValue;
}
// Re-assign
elem.value = currentValue;
伟大的东西,完全不需要什么我需要改变。非常感谢! – user1100099
伟大的答案,因为这是我有第二虽然它。如果我想把https放在那里怎么办? – user1100099
@ user1100099看我的编辑。 – jbabey