我是HTML新手;我需要将文本输入中的数字附加到网址的末尾。我怎么能这样做?
<input type=\"number\" id=\"b\" name=\"b\" value=\"1\">\
<script>
var str,i;
i= parseInt(b.value);
str+="<a href=/t"+i+">Send</a>";
</script>
当我尝试使用上面的示例代码时,单击发送时,它始终会发送{1}的初始值“1”。即使我更改了b
的值并尝试发送它,它也会发送相同的初始值。
有人可以帮我吗?
答案 0 :(得分:0)
您可以使用ID
搜索元素var el = document.getElementById("b")
使用.value
var val =el.value
使用window.location
var url = window.location.href; // this will return current url
url += "?key=" + val;
window.location.href=url;
您没有获得更新值的原因也是因为您在页面加载时调用脚本。您必须在活动中更新它。查找blur
事件,或者您可以使用按钮和点击事件,计算网址并路由到该事件。
答案 1 :(得分:0)
试试这个
<input type="number" id="b" name="b" value="1">
<a id="c" href="">Send</a>
<script>
document.getElementById("c").addEventListener("click", function() {
var i = document.getElementById("b").value;
this.setAttribute("href", "/t" + i);
});
</script>
答案 2 :(得分:0)
您的代码存在的问题是它会写出&#39;数字的初始值。页面加载时的框。你想要的快速版本是:
<input type="number" id="b" name="b" value="1" onchange="link1.href='t/'+parseInt(b.value);">
<a id="link1" href="">Send</a>
此代码适用于最新版本的Chrome,Firefox和Internet Explorer。您可能希望使用jQuery或document.getElementById来执行页面元素引用。