2016-04-10 10 views
0
populateSelect: function (selectID, INPUT, VALUE, TEXT) { 

     var JSONstring = JSON.stringify(INPUT, '/', ''); 
     var items = JSON.parse(JSONstring); 
     var $selectElement = $("#"+selectID); 

     $(items).each(function() { 
      var newOption = '<option value="' + this + '.' + VALUE + '">' + this + '.' + TEXT + '</option>'; 
      $selectElement.append(newOption); 
     }); 
    } 
selectId = #someSelectBox 
INPUT = JSON obj 
VALUE = someID 
TEXT = someName 
this.catId 
this.catName 
//catId and catName will be send via parameters. 

セレクタのオプションを設定する一般的な関数を作成したいと思います。 私はJSON、選択ボックスのID、値、テキストを渡すだけです。 JSONには多くの属性がありますので、特定の属性を選択します。JQueryで 'this'を使用して属性名をどのようにconcatinateできますか?

+0

JSONオブジェクトとは何ですか?それを見ることなく、 '$(item)'が何を選択しているのか分かりません。 "subCatCreatedBy":true、 "subCatCreatedBy": – Terry

+0

{3、 "catCount":5、 "subCatName": "test"、 "subCatCode": "1234"、 "subCatDescription": "テスト"、 "subCatIsActive" "subCatModifyBy":null、 "subCatModifyOn":null)、{"subCatId":4、 "catId":5、 "subCatName": "subCatModifyBy":null、 "subCatModifyOn":null "、" subCatCreatedOn ":" 2016-04-11T02:57:52.587 " "test"、 "subCatCreatedBy": "subCatCreatedOn": "2016-04-11T02:57:56.563"、 "test"、 "subCatCode": "1234"、 "subCatDescription": "test"、 "subCatIsActive" "subCatModifyBy":null、 "subCatModifyOn":null}]} –

答えて

0

はあなたがオプションのDOMのように作ることができます。

var newOption = '<option value="' + this['"+VALUE+"'] + '">' + this['"+TEXT+"'] + '</option>'; 

それを現在のオブジェクトからあなたのオブジェクトの自動的にピックアップキー。

+0

ここに1つの修正があります。このように連結する必要はありません 'this [' "+ VALUE +" ']'これは単にthis [VALUE] ' –

関連する問題