1
    <script language="JavaScript">

         function goThere()
        {
                var the_url = window.document.form.button.value;
                var good_url = fixURL(the_url);
                var new_window = window.open(good_url,"new_window","menubar,resizeable");
        }

        function fixURL(the_url)
        {
                var the_first_seven = the_url.substring(0,7);
                the_first_seven = the_first_seven.toLowerCase();
                if (the_first_seven != 'http://') 
                {
                        the_url = "http://" + the_url;
                }
                return the_url;
        }
        </script>
    </head>
    <body>
    <form name="the_form" onclick="goThere()"; return false;">


    <input type="button" name="the_url" class="broadGroups" onClick="goThere()" value="http://en.wikipedia.org/wiki/Category:Sports"></input>

    <input type="button" name="the_url" class="broadGroups" onclick="goThere()" value="http://en.wikipedia.org/wiki/Category:Film"></input>

</form>
</body>
</html>

所以这段代码可能完全搞砸了,但这是我想要做的。

标签内有两个按钮。我希望每个人都使用 onsubmit 方法来触发函数 goThere()。如何设置它以便将 the_url 设置为我从按钮标签中提取的值。我还希望能够在按钮本身上放置非 url 文本,同时允许它通过方法调用 onsubmit 调用 goThere()。

最后,它应该只使用 url,确保它以 http:// 开头(在这种情况下,这无关紧要,因为用户没有输入 url,但我想稍后将其保留用于其他目的) 并在带有菜单栏和 resizable 属性的新窗口中打开它。

对不起,很长的帖子。任何帮助将不胜感激。

4

1 回答 1

1

接听this你的goThere电话。这会将单击的元素引入您的 goThere 函数。然后您访问单击按钮的属性。

http://jsfiddle.net/wJMgb/

onClick="goThere(this)"

 

function goThere(elem) {
    var the_url = elem.value;
    var good_url = fixURL(the_url);
    var new_window = window.open(good_url, "new_window", "menubar,resizeable");
}

function fixURL(the_url) {
    var the_first_seven = the_url.substring(0, 7);
    the_first_seven = the_first_seven.toLowerCase();
    if (the_first_seven != 'http://') {
        the_url = "http://" + the_url;
    }
    return the_url;
}
于 2012-01-26T06:19:05.910 回答