有効なJSON応答でコールバックを発射ません:jQueryのgetJSONは、次のようになり、私は(jsonlint.comによって検証される)有効なJSONオブジェクトを返しますサーバーを持っている
"{\"encryption\": {\"key\": \"gKV0oPJwC5CBQxmn\"}}"
私のhtmlファイルは次のようになります。
<html>
<head>
<title>Testing Jsonp</title>
<script type="text/javascript" src='jquery-1.4.4.js'></script>
<script type="text/javascript" src='app.js'></script>
</head>
<body>
<input type='text' value='thing' id='target' />
<a href='' class='init'>Click</a>
</body>
</html>
app.js次のようになります。私はクロームネットワークコンソール "をクリックします" をクリックすると
$(document).ready(function(){
$('.init').click(function(event){
$.getJSON("http://localhost:37280/sites/1/encode?callback=?", { key: $("#target").attr('value') }, function(data){
alert('Success!');
});
event.preventDefault();
});
});
要求が送信されたことを示し、サーバーログは要求が受信されたことを確認し、chromeは上記のjson文字列を受信したことを示します。しかし、何も起こりません。私は私のコールバックが実行されていないと信じさせるアラートを取得しません。どんな助けでも大歓迎です!
実際に応答がJSONオブジェクトの引用符を戻していますか?彼らはそこにいるべきではありません。 – epascarello
エラーハンドラを追加し、エラーハンドラの内容を確認します。 –
私はサーバーに両方の方法で文字列を返すようにしましたが、コールバックの実行に違いはないようです。 – biagidp