我有以下HTML / jQuery代码生成一些链接。
HTML
<input type="text" id="text" placeholder="Enter text" autofocus />
<a id="link1" class="btn btn-info" href="#" target="_blank"> Search 1 </a>
<a id="link2" class="btn btn-info" href="#" target="_blank"> Search 2 </a>
<a id="link3" class="btn btn-info" href="#" target="_blank"> Search 3 </a>
的jQuery
<script>
window.onload = function(){
var sel = document.getElementById('text');
sel.onchange = function () {
document.getElementById("link1").href = "http://example.com/action?queryString=" + this.value;
document.getElementById("link2").href = "http://example.com/searchall.php?search=" + this.value;
document.getElementById("link3").href = "http://example.com/dashboard.aspx?term=" + this.value;
document.getElementById("text").focus();
}
};
</script>
在第二个搜索链接上,如果输入的值是IP地址,我希望实现更改wherby,然后更改URI。 e.g。
document.getElementById("link2").href = "http://example.com/ipsearch.php?ip=" + this.value;
我只是不知道从哪里开始这个改变。
非常感谢任何帮助。
答案 0 :(得分:1)
也许是这样的:
sel.onchange = function () {
var value = this.value;
var isIP = /^(([1-9]?\d|1\d\d|25[0-5]|2[0-4]\d)\.){3}([1-9]?\d|1\d\d|25[0-5]|2[0-4]\d)$/.test(value);
if (isIP) {
document.getElementById("link2").href = "http://example.com/ipsearch.php?ip=" + value;
} else {
document.getElementById("link2").href = "http://example.com/searchall.php?search=" + value
}
};
这使用正则表达式来确定是否输入了IP,以及是否设置了不同的URL。