console.log(words)は複数の検索語の結果が返ってくるが、
var len = words.length;
console.log(len);をすると未定義になる。
なぜでしょうか。
js
1 }).done(function (words) { 2 $(".ajaxregisteredresult").empty(); 3 console.log(words); 4 var len = words.length; 5 console.log(len); 6 for(var i=0; i < len; i++){ 7 $(".ajaxregisteredresult").append('<option value="' + words[i]["registered"] +'">'); 8 }
lenの方は、undefinedがあらわれます。
どうしてでしょうか。
js
1$(function() { 2 $('.search_box').on("keyup",function(){//keyup時 3 4 var words = new Object(); 5 $.ajax({ 6 url: "/words/registered.json", 7 type: "post", 8 dataType: "json", 9 data : { 10 words : $(".search_box").val() 11 } 12 }).done(function (words) { 13 $(".ajaxregisteredresult").empty(); 14 console.log(words); 15 words_arr = words.toArray(); 16 var len = words_arr.length; 17 console.log(len); 18 for(var i=0; i < len; i++){ 19 $(".ajaxregisteredresult").append('<option value="' + words[i]["registered"] +'">'); 20 } 21 }).fail(function (data) { 22 console.log("エラーだよ"); 23 }); 24 }); 25}); 26
wordsがなんなのか見せていただけませんか。
コールバックのようですので、そのコールバックが呼ばれるところも含めていただけると助かりますが
回答1件
あなたの回答
tips
プレビュー