次のコードでは、jQueryで新しいdiv要素を追加しようとしています。私はjavascriptの文体にこれを取得するにはどうすればよいjavascriptで動的にPHP配列を取得する
$(document).ready(function() {
var languages = <?php echo json_encode($languages); ?>;
var div = '';
$.each(languages, function (key, value) {
div = '<div class="main bg_notice" style="padding:3px; line-height:20px;">';
div += ' <img src="/lang/' + value['directory'] + '/admin/images/' + value['image'] + '" alt="' + value['name'] + '" title="' + value['name'] + '" style="border:0;">';
div += ' <b><?php echo TEXT_MASK_ALIAS; ?></b>';
div += ' <input type="text" name="mask_alias[' + value['id'] + ']" value="" style="width:80%" maxlength="255">';
div += '</div>';
$('[name="categories_name[' + value['id'] + ']').closest('div').after(div);
});
});
入力フィールドの値はPHP
に動的に作成されecho (isset($mask_alias[$languages[$i]['id']]) ? stripslashes($mask_alias[$languages[$i]['id']]) : $categories_desc_fields['mask_alias']);
。
$languages[$i]['id']
はJavaScriptで
+ value['id'] +
と等価です。
結果は、私はlanguages
はJSON形式ではなく、実際のオブジェクト内の文字列である疑いがある、この非作業コード
div += ' <input type="text" name="mask_alias[' + value['id'] + ']" value="<?php echo (isset($mask_alias[$languages[$i]['id']]) ? stripslashes($mask_alias[$languages[$i]['id']]) : $categories_desc_fields['mask_alias']); ?>" style="width:80%" maxlength="255">';
あなたはdocument.readyでこれをやっているので、それはあなたがおそらく唯一のPHPでこれを行うことができることを指摘する価値がある、と心配する必要はありませんjavascriptで読み込まれるphp変数をエコーすることについて – James
それはちょうど私かもしれませんが、私は本当にあなたが何を求めているのかを理解するのに苦労しています、あなたは精巧にできますか? – zfrisch
javascriptの構文に変更したいコードラインを追加しました。 – Modulfux