私はこのようなコードをいくつか持っています、
<form id="abc">
<input type="text" id="txt" />
</form>
そして今、私はこのようにリダイレクトしたい、
var temp = $("#txt").val();
url = "http://example.com/" + temp;
window.location.replace(url);
// or window.location(url);
これを解決するためにjQueryにとにかくありますか?それでもまだurl = http://example.com
を持っています。
他の回答で述べたように、これを行うためにjQueryは必要ありません。あなただけの標準的なプロパティを使用することができます。
しかし、window.location.replace(url)
とwindow.location = url
の違いが分からないようです。
window.location.replace(url)
は、アドレスバーの現在位置を新しい位置に置き換えます。この関数を呼び出していたページは、ブラウザの履歴には含まれません。したがって、新しい場所でブラウザの戻るボタンをクリックすると、リダイレクトされているJavaScriptを含むドキュメントにアクセスする前に表示していたページに戻ります。window.location = url
は新しい場所にリダイレクトします。この新しいページでは、ブラウザの戻るボタンは、リダイレクトするJavaScriptを含む元のページを指しています。もちろん、どちらにもユースケースがありますが、この場合は後者に固執する必要があるようです。
P.S .:おそらく、JavaScriptの2行目のhttp:
の後に2つのスラッシュがあるのを忘れています。
url = "http://abc.com/" + temp;
あなたに本当のことを言いなさい、私はまだあなたが必要とするものを手に入れません、しかし
window.location(url);
あるべき
window.location = url;
window.location referenceを検索するとそれがわかります。
jQueryにはこのための選択肢はありませんし、選択肢もありません。これは完全に有効なJavaScriptであり、jQueryがこれにラッパー関数を提供する理由はありません。
あなたがjQueryを使っていてもjQueryはjavascriptの上にある単なるライブラリです。
ところで、window.locationは関数ではなく、次のように設定する必要があるプロパティです。
window.location = url;
var temp="/yourapp/";
$(location).attr('href','http://abcd.com'+temp);
これを試してください...代替として使用
これを試して...
$("#abc").attr("action", "/yourapp/" + temp).submit();
その意味:
id
が "abc"のフォームを探し、それを "action"という名前のattribute
に変更して送信します。
これは私のために働きます... !!!
あなたはjqueryなしでそれをより簡単にすることができます
location = "https://example.com/" + txt.value
function send() {
location = "https://example.com/" + txt.value;
}
<form id="abc">
<input type="text" id="txt" />
</form>
<button onclick="send()">Send</button>