私はjavascriptとjqueryにかなり慣れていません。Twitter からのデータを必要とする Web アプリを作成しています。ここに私が持っている2つのコードがあります。1 枚目は友人からのもので、もう 1 枚は私のバージョンです。現在、私のバージョンは機能していません。だからここに私のいくつかの質問があります:
1) バージョン 1 では、なぜ関数に e を渡すのですか? 2) dataType で「jsonp」を使用するのはなぜですか? 3) コードが機能しない原因は何ですか?
と
コード バージョン 1 が機能する理由は何ですか?
作業バージョン
$('#input').submit(function(e){
e.preventDefault();
e.stopPropagation();
var hashtag = $(this).find('input[name="hashtag"]').val();
var twitterapi = "http://search.twitter.com/search.json?";
jQuery.ajax({
type: "GET",
url: twitterapi,
data: {
"q": hashtag,
"rpp": 1000
},
dataType: 'jsonp'
}).done(function (response) {
var results = response.results;
for (var i = 0; i < results.length; i++) {
$("#tweet").append("<p class='tweet'>" +
"<span class='username'>" +
results[i].from_user +
"</span> <span class='tweet_content'> " +
results[i].text + "</span></p>");
}
});
私のバージョン
var hashtag = $(this).find('input[name="hashtag"]').val();
var twitterapi = "http://search.twitter.com/search.json?";
var tweetspresent = results.length;
jQuery.ajax(
{
type: "GET",
url: twitterapi ,
data: {"q": hashtag,"rpp":1000},
dataType: 'jsonp',
});
}).done(function(results)
{
for(i=0;i<tweetspresent;i++)
{
$("#tweet").html("<p> Name: " + results[i].from_user + " - " + results[i].text + "</p>");
}
});
});