2009-07-30 5 views
13

だから私は私が欲しい送信ボタンとテキスト入力を持つフォーム...フォームアクションでurlにハッシュ「#」記号を追加しますか?

持っている:になるために http://localhost/

を: http://localhost/#q=

私が必要とするJavaScriptでソリューションをしましたハッシュのonclick ..とフォームの "アクション"をURLに変更しますが、これはIEでは動作しません。

誰かがすべてのブラウザで動作する解決策を持っていますか?

答えて

7

これで何をやっているのかはっきりしません。

+0

ほとんどの場合、Googleのような検索や検索システムのようなものがあります。 –

8

IEでフォームアクションからハッシュを引っ張っていない同様の問題が発生しました。

私はIE以外のもので、このフォームを送信すると

<form action="/#search" id="search-form"> 
    <input type="text" class="search-query" placeholder="Search" name="q"> 
</form> 

フォームページが

/?q=searchparams#search

に行ってきました。しかし、IEで、それは

/?q=searchparams

に行ってきました

これを解決するにはd JQueryが送信アクションにバインドして、私が行きたいページにリダイレクトします。

$("#search-form").submit(function() { 
    var query = $('input[name="q"]').val(); 
    window.location.href = 'index.php?q='+query+'#search'; 
    return false; 
}); 

以来、正常に動作しています。

+3

IEで同様の問題が発生しました。私たちは '#23 'に'#'をエンコードしたURLを終了しました。これにより、フォームを正常に提出し、ハッシュを保持することができました。 –

+0

@KevinMは事実上正解です。条件付きコードやスクリプトの依存関係がなくても、全体が意図したとおりに動作することを意味します。それをあなた自身の答えとして提出する必要があります! (または私は:P) – Barney

関連する問題