0

PHP から JSON を返します。正常に動作しますが、データが空の場合は、次のように、jQuery で選択した要素に .css を適用するために使用するデフォルトの JSON データを入力します。

db.data = { "blocks" :  {"css" : {"background-color" : "purple" }}};

(編集:私のデータベースのcssには実際にスラッシュが含まれており、eval()で動作します"css":"{ \"background-color\" : \"grey\" }:)

console.log にすると、FF はそれをオブジェクトとして表示します (すべて緑と赤で、適切にフォーマットされ、firebug でクリック可能/展開可能です:

Object { background-color= "purple" }

cssに渡す前にeval()それをします。jQuery JSON Plugin から試し$.evalJSONましたが、次のようになります。

SyntaxError: JSON.parse: unexpected character

編集: eval() なしで試しましたが、同じエラーがスローされますが、スラッシュで css を使用するとスローされません

どこかに手動で追加しようとしました]が、明らかにうまくいきません.2つ追加すると、配列が作成されますが、これは望ましくありません。

次のように CSS を要素に適用します。

DOMID = $('#target');
var CSS = eval(" (" +db.data.blocks.css+") ");
this.DOMID.css(CSS);

" ("、スペースなしで試してみました"("

何か案は?

4

1 に答える 1

1

あなたが投稿したコードは、見当違いのため、決して機能しません。eval何もする必要はありませんdb.data.blocks.css。文字列への強制があったとしても(括弧を入れるために)、完全に間違った値が返されます。

代わりに、単に書く必要があります

this.DOMID.css(db.data.blocks.css);
于 2012-08-16T11:59:22.300 に答える