![](/img/trans.png)
[英]Add value from radio button to existing link url use javascript
[英]Javascript Radio Button Value in URL
我已經閱讀了幾天的各種變化,找不到適合我想要的解決方案。 這可能比我提出的要容易。
我有一組單選按鈕,並且想要將檢查后的值傳遞給URL的一部分。
<input type="radio" name="link" value="one" checked="checked">One
<input type="radio" name="link" value="two">Two
<input type="radio" name="link" value="three">Three
我希望將選中的值傳遞給dt之類的變量,然后傳遞給Submit按鈕,該按鈕將帶您到包含單選按鈕文本的url。
<input type="button" value="OK" id="ok_button" onclick="parent.location='/testfolder/' + dt;>
但是我正在努力尋找如何獲取var dt = document.getElementByName('link')。value; 當我嘗試應用for循環以確保已選中時為我工作。
提交按鈕中的onclick ='parent.location ....是否需要在函數中而不是提交按鈕的一部分? 因此,相同的功能可以獲取單選按鈕的值嗎?
因此,我希望StackOverflowers能夠提供一些指導...謝謝
首先,您想知道組合框具有這種易於使用的內襯值。
document.querySelector('[name="link"]:checked').value;
我建議使用事件處理程序來處理javascript,因此請勿將其寫在onclick屬性中。
var btn = document.getElementById('ok_button');
btn.addEventListener('click', function(){ /*handle validations here*/ })
var dt = document.getElementsByName('link')[0].value
對我var dt = document.getElementsByName('link')[0].value
您可以在嵌入式onclick處理程序或您定義的函數中使用它
你可以嘗試下面的代碼
<input type="button" value="OK" id="ok_button" onclick="functionName();'>
JavaScript代碼
<script type="javascript">
function functionName(){
var radios = document.getElementsByName('link'),
value = '';
for (var i = radios.length; i--;) {
if (radios[i].checked) {
value = radios[i].value;
break;
}
}
window.location.href='/testfolder/'+ value
}
</script>
<input type="radio" id="1" name="link" onchange="WhatToDo()" value="one">One</input>
<input type="radio" id="2" name="link" onchange="WhatToDo()" value="two">Two</input>
<input type="radio" id="3" name="link" onchange="WhatToDo()" value="three">Three</input>
<script type="text/javascript">
function WhatToDo() {
var rButtons = document.getElementsByName('link');
for (var i = 0; i < rButtons.length; i++) {
if (rButtons[i].checked) {
alert(rButtons[i].value);
}
}
}
</script>
也許是這樣的。 使用onchange,然后循環瀏覽單選按鈕。 同時循環查看是否已選中單選按鈕。 這是一個起點。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.