首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >HTML按钮-如何动态更改url内容

HTML按钮-如何动态更改url内容
EN

Stack Overflow用户
提问于 2017-10-18 19:10:20
回答 4查看 1K关注 0票数 1

我正在尝试更改按钮URI中的值,以输入文本值。

代码语言:javascript
复制
<div class="numcontainer">
    <input required="required" onchange="getNumber()" id="cnt" type="input" name="input" placeholder="ISD">
    <input required="required" onchange="getNumber()" id="wano" type="input" name="input" placeholder="Enter number">
</div>
<button type="submit"  name="gowa" id="btngo"  onclick="location.href='myserver://send?phone=NumberPlaceHolder'">Go!</button>

NumberPlaceHolder:尝试连接在两个输入中输入的值

JS:

代码语言:javascript
复制
function getNumber() {
    document.getElementById('btngo').href.replace("NumberPlaceHolder",document.getElementById('cnt').value+document.getElementById('wano').value); 
}

它不能像预期的那样工作。我该如何解决这个问题呢?

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2017-10-18 20:21:48

只是另一种选择,它更干净

代码语言:javascript
复制
const getNumber =()=> {
    let val =id=> document.querySelector(id).value
    console.log('myserver://send?phone='+val('#cnt')+val('#wano'))
}
//console or location.href
代码语言:javascript
复制
<div class="numcontainer">
   <input required id="cnt" type="text" placeholder="ISD">
   <input required id="wano" type="number" placeholder="Enter number">
</div>
<input type="button" name="gowa" id="btngo" onclick="getNumber()" value="Go!">

onChange是非常不必要的。

票数 1
EN

Stack Overflow用户

发布于 2017-10-18 19:13:24

按钮不能具有href属性。您需要在此处更改onclick属性:

代码语言:javascript
复制
function getNumber(){
  document.getElementById('btngo').setAttribute("onclick", document.getElementById('btngo').getAttribute("onclick").replace("NumberPlaceHolder", document.getElementById('cnt').value+document.getElementById('wano').value)); 
}

像这样拆分总是更好:

代码语言:javascript
复制
function getNumber(){
  curOnclick = document.getElementById('btngo').getAttribute("onclick");
  wanoValue = document.getElementById('cnt').value+document.getElementById('wano').value;
  newOnclick = curOnclick.replace("NumberPlaceHolder", wanoValue);
  document.getElementById('btngo').setAttribute("onclick", newOnclick); 
}
票数 1
EN

Stack Overflow用户

发布于 2017-10-18 19:17:35

你应该使用简单的

代码语言:javascript
复制
<a href="myserver://send?phone=NumberPlaceHolder"></a>

而不是

代码语言:javascript
复制
<button type="submit" name="gowa" id="btngo" onclick="location.href='myserver://send?phone=NumberPlaceHolder'">Go!</button>

要更改链接,请使用以下命令:

代码语言:javascript
复制
document.querySelector('.start a').href = 'my-new-address'
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/46808829

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档