この問題は私には奇妙に思え、私はそれを修正できないようです。私は単純なHTMLフォームを持っています。内部には、ここに示すようなテキストボックスとボタンがあります。
<form id="form1" method="get"> <!-- Note: No Action property -->
<div>
<h1>
Simple Test Form</h1>
<table border="0" width="400">
<tr>
<td align="right">
All of these words
</td>
<td>
<input name="txtAll" id="txtAll" type="text" value="testing keyword" />
</td>
</tr>
<tr>
<td colspan="2" align="center">
<input type="submit" name="Submit" value="Submit" onclick="myJS(this);" />
</td>
</tr>
</table>
</div>
</form>
MyJSファイルは次のとおりです。
<script type="text/javascript">
function myJS(which) {
var CONSTANT_SITE_TARGET = "http://servername/redirect/target.aspx?text=";
//capture all values from the form
var allWords = document.getElementById("txtAll").value;
var morestring = ""; //More data manipulation here.....
var url = CONSTANT_SITE_TARGET + allWords + morestring;
window.open(url);
//window.location = url; //Doesn't work
//window.location.href = url; //Doesn't work
//self.location = url; //Doesn't work
//top.location = url; //Doesn't work
}
</script>
ご覧のとおり、JavaScriptで指定されたURLにリダイレクトされません。window.openを使用すると、機能します。<form ...>タグには、 actionプロパティを入れないことに注意してください。新しいブラウザを開きたくありません。同じブラウザ内の新しいURLにリダイレクトするだけです。
リダイレクトする方法はありますか?