1

私はこれで燃え尽きました(金曜日のせいかもしれません)、試してみましたが、グーグルで検索しましたが、これを機能させる方法が見つかりませんでした. コードは簡単に見えますが、ラジオ ボタンが div に追加されません。私は確かに、私は何かばかげたことを見逃しています。

var m_fastingOptions = [{ "Id": "1", "Name": "Fasting" }, { "Id": "2", "Name": "Not Fasting" }];

$.each(m_fastingOptions, function() {
    $("#dvFastingOptions").append(
        $('<label />', {
            'text': this.FastingName                            
        }).append(
            $('<input />', { 
                type: 'radio', 
                name: 'rdoFastingOptions', 
                id: 'rdoFastingOptions' + this.Id,
                value: this.Id
            } )
        )
    );    
});

これが私が遊んでいたjsFiddleです。どんな助けでも大歓迎です。

正しいバージョンの jQuery を jsFiddle に追加した後、ラジオ ボタンは表示されますが、ラベル テキストは表示されません。

私が見なければならないこと: O 断食 O 断食しない

4

2 に答える 2

3

問題は、間違ったプロパティ名を参照していることです。

の代わりにName、に移動しようとしていますFastingName

$('<label />', {
    'text': this.Name //This is correct
})

それか、オブジェクトを次のように更新します。

var m_fastingOptions = [{
    "Id": "1",
    "FastingName": "Fasting"
}, {
    "Id": "2",
    "FastingName": "Not Fasting"
}];

ここでフィドルを参照してください:http://jsfiddle.net/pratik136/XWHsA/

編集:

出力を次のように表示するには

O Fasting O Not Fasting

.prepend()の代わりに使用.append()

于 2013-07-26T20:03:14.793 に答える
1

最後に、問題の解決策を見つけました。ここに回答コードがあります。

var listOfOptions = [{ "Id": "forYourself", "Name": "For Yourself" }, { "Id": "myEmployees", "Name": "My Employees" }, { "Id": "forOthers", "Name": "For Others" }];
        $.each(listOfOptions, function() {
            $(".optionDiv").append(
                $('<input />', {
                    type: 'radio',
                    name: 'rdoOptions',
                    id: 'rdoOptions' + this.Id
                })
            );
            $(".optionDiv").append(
                        $('<label />', {
                            'text': this.Name
                        })
            )

        });
    });

これを行うためのより簡単な方法はありますか?

于 2014-04-07T18:17:19.327 に答える