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>

したがって、このコードは完全に台無しになっている可能性がありますが、これが私がやろうとしていることです。

タグの中にボタンが2つ付いています。それぞれがメソッド onsubmit を使用して関数 goThere() をトリガーするようにします。the_url がボタンタグから取得した値に設定されるように設定するにはどうすればよいですか。また、メソッド呼び出し onsubmit を介して goThere () を呼び出すことを許可しながら、ボタン自体に非 URL テキストを配置できるようにしたいと考えています。

最終的には URL を取得する必要があります。http:// で始まることを確認してください (この場合、ユーザーが URL を入力していないため問題ありませんが、後で他の目的のために保持したいと思います)。 )、メニューバーとサイズ変更可能なプロパティを含む新しいウィンドウで開きます。

長い投稿で申し訳ありません。どんな助けでも大歓迎です。

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 に答える