以前は、私が持っていなかった問題の解決策を見つけましたが、今では解決策を見つけることを期待して、より多くの問題を作成しています.
URL を送信するフォームがあります。
<form name="urlField" onsubmit="return submitURLFieldForm();">
<input type="text" name="address" id="addressfield" />
</form>
その URL が新しいタブ/ウィンドウで開かれます。ここで、フィールドをリセットし、「http://」を追加し直し、フォーカスを最後に配置して、新しい URL を入力できるようにします。以下の私の JS は、Opera を除くすべてのブラウザーで動作します。Opera を含むすべてのブラウザーでページが正しく読み込まれるため (フィールドfocus()
&value()
は両方とも元々<body>
タグに設定されています)、以下の onSubmit 関数に問題があるに違いないと考えています。
function submitURLFieldForm() {
var url = document.getElementById('addressfield').value;
if (!url.match(/^[a-zA-Z]+:\/\//)) {
url = 'http://' + url;
}
window.open(url);
document.urlField.address.reset();
document.urlField.address.focus();
document.urlField.address.value='http\://';
}
これを書く別の方法はありますか?これはずさんですか?