0

jsonデータを非表示の入力要素にphpで保存するWebサイトを構築しています

<input type='hidden' class='json_data' name='json_data' value='".json_encode($data[0])."'>

そのコードを使用すると、次の結果が得られます。

<input class="json_data" type="hidden" value="[{"ALBUM_ID":"1234","PHOTOS_ID":"1234578"}]" name="json_data">

しかし、jquery.valで値を取得しようとしてALBUM_IDを表示しようとすると、これが得られます{

json を html に正しく配置する方法に何か問題がありますか?

jquery / javascriptで取得しますか?

ありがとう

4

4 に答える 4

3

まず、この開いているコンソールで先に進み、結果を確認してください。Ctl+Shift+j.

http://jsfiddle.net/techsin/Q2MHA/

2 つの修正を行う必要があります。'"'

2番目にこのコード

JSON.parse($('.json_data').val())[0]

[0] が必要なのは、何らかの理由で json オブジェクトが [] でラップされているためです。理由はわかります。

あなたのhtmlは次のようになります

<input ... value='[{"ALBUM_ID":"1234","PHOTOS_ID":"1234578"}]'...>

于 2013-08-29T13:29:06.167 に答える
1

次の行を注意深く調べてください。

<input class="json_data" type="hidden" value="[{"ALBUM_ID":"1234","PHOTOS_ID":"1234578"}]" name="json_data">

"ご覧のとおり、文字列の囲みに使用しています。json 文字列に"は、文字列の囲みを壊すものも含まれています。'文字列を囲むために使用します。

<input class="json_data" type="hidden" value='[{"ALBUM_ID":"1234","PHOTOS_ID":"1234578"}]' name="json_data">
于 2013-08-29T13:08:02.353 に答える