如何创建动态javascript函数

时间:2016-06-21 18:24:03

标签: javascript submit

当我选择谷歌时,提交按钮值变成google.com,我选择雅虎提交按钮值将会改变。这是我的尝试。

 <script>
        function goToNewPage() {
            if(document.getElementById('target').value){
                window.open('url','_blank');
            }
        }
        </script>
<form name="dropdown">
            <select name="selected" id="target" accesskey="E">
            <option selected>...Select...</option>
            <option value="http://www.google.com">Google</option>
            <option value="http://www.yahoo.com/">Yahoo</option>
            </select>
            <input type="button" value="Go" onclick="goToNewPage(document.dropdown.selected)">
        </form>

1 个答案:

答案 0 :(得分:0)

你非常接近。 这个编辑版本修复了它。 (fiddle

HTML - 为所选内容添加值。去掉路上设置URL的尝试。添加了按钮的ID,用于新功能。

<form name="dropdown">
        <select name="selected" id="target" accesskey="E" onchange="changeText()">
        <option value="nothing" selected>...Select...</option>
        <option value="http://www.google.com">Google</option>
        <option value="http://www.yahoo.com/">Yahoo</option>
        </select>
        <input type="button" value="Go" id="butGo" onclick="goToNewPage()">
    </form>

JS - 调用函数时设置URL。不要将URL放在引号中。它会认为它是一个字符串。

function goToNewPage() {
    url = document.getElementById('target').value;
    //alert(url)
        if(document.getElementById('target').value!='nothing'){
            window.open(url,'_blank');
        }
    }

如果要更改按钮上的TEXT,请执行以下操作:

function changeText(){
  url = document.getElementById('target').value;
    if (url=='http://www.google.com') {
    document.getElementById('butGo').value = 'Google'
  }
  if (url=='http://www.yahoo.com/') {
    document.getElementById('butGo').value = 'Yahoo'
  }
}