0

私はwijmoグリッドに取り組んでおり、データがJSONから来るグリッド内に選択ボックスを追加したいと考えています。

これは私が試したコードですが、ボックス内にオプションデータが表示されていません。

<script type="text/javascript">
$.ajax({ 
    url: "DeviceType",
    type: "GET",
    dataType: "json",
    contentType : "application/json",
    success: function (responce) { 
        if (responce.listResponse.items.length > 0) {
            $.each(responce.listResponse.items, function (i, entity) {                   
                $('#devicetype').append(
                    $('<select/>', {
                        'id': 'deviceType' + entity.paramCode,
                        'type': 'select', 
                        'name':         'deviceType', 
                        'value': entity.paramValue
                    }),
                    $('<options />', {
                        'for': 'deviceType' + entity.paramValue, 
                        'text':         entity.paramValue
                        }).click(function() {
                        alert(entity.paramCode);
                    })  
                    );                  
            });
        }
    }
});
</script>
<body>  
<div id="devicetype" name="deviceType" ></div>
</body>
4

1 に答える 1

1

オプションをに#devicetype追加していますが、それらを選択に追加する必要があります。

/* not tested */
$( '#devicetype' ).append(
    $( '<select/>', {
        'id': 'deviceType' + entity.paramCode,
        'type': 'select',
        'name': 'deviceType',
        'value': entity.paramValue
    } ).append(
        $( '<option />', {
            'for': 'deviceType' + entity.paramValue,
            'text': entity.paramValue
        } )
    ).click( function() {
        alert( entity.paramCode );
    } )
);

更新: ああ、tpaksu が上記のコメントで述べたように、スペルミスがありoptionます。最初に別のループですべてのオプションをコンパイルする必要があるかもしれません。現在のバージョンは 1 つのオプションに対してのみ機能します。

于 2012-09-10T11:18:31.383 に答える