2016-12-01 9 views
-1

したがって、私は次のjson値を持っています:{"pages": 5}。 Pagesは私が持っているデータの数を表しています、私は持っているページ数のボタンを作成するループをしたい(5)。現時点では機能していませんが、私はあまり理由はわかりません。jQueryでのjson値の使用

私が試したものをこの:私、それが与える警告ページ

$.each(pages, function() { 
       $('body').append(<input type="button"/>) 
       alert(pages) 
       }) 

とき:警告ボックスで{"pages": 5}、私は「私は5 iはからforループを行う必要があるが、私はドン思っていますページの値、すなわち5を参照する方法を知っています。

+0

'{$ ( 'body')。append( ''); } ' – mplungjan

+0

この[fiddle](https://jsfiddle.net/pandeyvishal1986/588f2b3k/#&togetherjs=kCd283bhj7)を使用してください。それは助けてください! – RonyLoud

答えて

2

jqueryのeachは、配列またはオブジェクトのプロパティの値を反復処理しますが、指定された回数だけ繰り返しは実行されません。
この時点ではまだ私はあなたがオブジェクトであることを考える必要があると思います。なぜならこの時点でまだ文字列であると確信しているからです。alertはダイアログのオブジェクトを表示しません(console.logと異なります)。
あなたがオブジェクトを解析した後、あなたはあなたが文字列の代わりに、JavaScriptのオブジェクトを持っているようだpagesプロパティ

var pagesObj = JSON.parse(pages); 
for(var i = 0; i < pagesObj.pages; i++) { 
    $('body').append('<input type="button"/>'); 
} 
1

あなたは'が見つかりませんでした。

var json= { 
    pages: 5 
} 

あなたはこのような可変のページで見ることができます: - - :

json.pages 

もし

使用し

$.each(pages, function() { 
       $('body').append('<input type="button" value="myButton" />') 
       alert(pages) 
       }) 
+0

http://api.jquery.com/jquery.each/ – mplungjan

+2

なぜ誰かがこれを投票しましたか? 'pages'は配列やコレクションではありません。それは数字です – mplungjan

2

あなたのJSON値は、次のようになりますオブジェクトを表しページ数のループを繰り返す必要があります。 -

for(var i = 0; i < json.pages; i++) { 
    ... 
} 
3

とforループを使用することができます。 オブジェクトとしてそれを解析するJSON.parse()を使用して、あなたは、関数でkey, valueを取得する必要があります:

(VAR I = 0; iのページを<;私は++)のため
var newPages = JSON.parse(pages), 
    btns = ""; 
for(var i=0; i < newPages.pages; i++){ 
    btns += $('<input>',{ "type"="button"}); 
} 
$('body').append(btns); 
+1

質問は、各ページのボタンを出力する機能を求め、これは1つだけを出力します。 – Joe

+0

@ジョーは完全にそれを逃したことに同意した。 – Jai

+0

@Joeが更新されました。これにより、ボタンがあることを確認して、すべてのボタンが準備完了状態になったらボタンを配置します。 – Jai

2

Working fiddle

var json= { 
    pages: 5 
}; 
var num= json.pages; 
for(var i = 0; i < num; i++) { 
    $('body').append('<input type="button"/>'); 
    alert("Do what ever you want"); 
} 
関連する問題