0

FirefoxおよびBlackbarryブラウザーでのみ問題があるコード行に従って、jquery Ajax を使用しています。

位置:

navigator.geolocation.getCurrentPosition(currentPosition);

function currentPosition(res){
                window.res = res;
}

コード:

var postion = window.res;

    $.ajax({
          url: 'SendLocation',
          type: 'post', 
          data: position, // Position is navigator.geolocation.getCurrentPosition
          success: function(res){
                alert(res);
       }
    });

エラー:

NS_ERROR_XPC_BAD_OP_ON_WN_PROTO: Illegal operation on WrappedNative prototype object

value = jQuery.isFunction( value ) ? value() : ( value == null ? "" : value );

FormData Object not submit via jQuery AJAX call post を読んだ後、次のコード行を追加すると、コードは processData: false, contentType: false, になります。

更新されたコード:

$.ajax({
      url: 'SendLocation',
      type: 'post', 
      data: position, // Position is navigator.geolocation.getCurrentPosition
      processData: false,   //Added this line
      contentType: false,   //Added this line

      success: function(res){
            alert(res);
   }
});

これでエラーは発生しませんでしたが、コードも機能しなくなります。

4

2 に答える 2

0

私を助けてくれてありがとう、ここで私がしたことをお話ししましょう。位置オブジェクトから必要な値を選択し、新しいオブジェクトを作成し、位置から取得したデータを入力しサーバーに POST すると、正常に動作するようになりました。ありがとう..!

于 2013-05-19T19:35:16.940 に答える
0

ジオロケーション DOM オブジェクトを送信しようとするため、位置変数で serialize() を使用することをお勧めします。

https://developer.mozilla.org/en-US/docs/DOM/window.navigator.geolocation.getCurrentPosition

このエラーは、firebug を使用して POST 変数を調べている場合に表示されます。

于 2013-05-12T16:00:32.420 に答える