質問: jQuery の $ajax の質問です。 補足コードは $ajax から戻ってきたときリダイレクトするか?単なるテストコードですが希望通りリダイレクトしません。 [ $('#ajaxFired').html('Saved: ' + $(self).val()); ]は動いているので setTimeout 内には入っているみたいです。 また、試しに[ location.href=url+ "?fbid=" +fb_id; ]を[ $('#ajaxFired').html('Saved: ' + $(self).val()); ]直下に記述してみたのですが希望通りリダイレクトしますので、URLなどの間違いではありません。 <{$ajax_devserrch_url}>もSmartyテンプレートに出力された中身を何度も確認していますのでこれも間違いありません。 どうも、$ajax が問題のような気がします。 しかし、$ajax は別な場所にコピペで記述した同じものはきちんと動いています。 $ajax は や 内に書かなければならないなどルールはありますか? 使用しているモジュールは jQuery Text Change Event よろしくお願いします。 ---追記--- コメントを頂きましたので、環境をコメントに追記しました。
回答: > ところで、IE10のF12で以下のようなメーッセージが出てきます。 > > > > SCRIPT65535: オブジェクトの呼び出しが無効です > > jquery.min.js, 行 5 文字7816 > > > > > > これって関係あるでしょうか? > > あります。 Ajax でリクエストを出す前にエラーが出ているので、success にも error にも制御が渡りません。 エラーの原因になっているのは、ここ。 > $.ajax('/cgi-bin/b.rb',{ > type: 'post', > url: '<{$ajax_devserrch_url}>', > data: {fbid:fb_id, query:self}, > success: function(data){ > location.href=url+ "?fbid=" +fb_id; > }, > > self がオブジェクトなので、訳が分からないことになってます。 > data: {fbid:fb_id}, > > というふうに、パラメータ query を削ったり、 > data: {fbid:fb_id, query: "foo-bar"}, > > このように明示的に文字列を渡せば、エラーにならず、別ページに遷移します。 質問からは、パラメータ query に何を渡すのかは判断できませんが、文字列として query パラメータを指定するように見直してください。