JSON 文字列を返す .post フォームを作成しました。選択ボックスの名前に基づいてデータを取得する必要があります。次の例を参照してください。
JavaScript
$(document).ready(function(){
$.post('/seller/product_upload/helpers/jpost_product_form_autofill.php',{product_id:$("input[name='product_id']").val()},function(data){
alert(data);
if(data!='false'){
var obj = jQuery.parseJSON(data);
$("#attributes_table select").each(function(){
var select=$(this);
select.find("option").each(function(){
var option=$(this);
var select_name=select.attr('name');
alert(select_name);
alert(obj.select_name);
if(option.val()==obj.select_name){
option.attr('selected','selected');
}
});
});
}
});
});
ここで重要なセクションは、実際には下部if
です。obj.select_name
ここではメインのオブジェクト名ではありません。これは実際にはselectbox
、JSON で解析された配列キーの値と一致するようにした の名前です。
しかし今、システムは未定義のアラートを出し続けていobj.select_name
ます。JSONオブジェクトとして解析する前に、最初にselect_nameを文字列として解析する方法はありますか?