0

このコードを使用して radioButton を作成します。

var slotDurationSettingsRow = dojo.create('tr', null, table);
    dojo.create('td', {innerHTML: 'Slot Dauer'}, slotDurationSettingsRow);
    var durationSettingsTD = dojo.create('td', {align: 'right'}, slotDurationSettingsRow);
    var durationSettingsContainer = dojo.create('div', null, durationSettingsTD);

    var radioOne = new dijit.form.RadioButton({
            label:"RadioButton1",
            value: "tea",
            name: "drink",
        },
        durationSettingsContainer);

ボタンは作成されましたが、ラベル属性が機能していないようです。問題を見つけるのを手伝ってください。

4

2 に答える 2

1

@Laykeが言及したように、別のラベル要素を作成する必要があります。

var slotDurationSettingsRow = dojo.create('tr', null, table);

dojo.create('td', {innerHTML: 'Slot Dauer'}, slotDurationSettingsRow);

var durationSettingsTD = dojo.create('td', {align: 'right'}, slotDurationSettingsRow);

var durationSettingsContainer = dojo.create('div', null, durationSettingsTD);

var radioOne = new dijit.form.RadioButton({
    value: "tea",
    name: "drink",
}, durationSettingsContainer);

var label = dojo.create('label', {
    innerHTML: 'RadioButton1',
    for: radioOne.id
}, durationSettingsTD);

ここにフィドルがあります。durationSettingsTDラベルがノードに添付されていることに注意してください。

のドキュメント dijit/form/RadioButton、特に例も確認します。プログラムの例でも、label既に要素が配置されていますが、考え方は同じであることに注意してください。

于 2013-09-20T15:49:51.167 に答える
0

dijit/form/RadioButton ウィジェットで「ラベル」属性を作成することはできません。実際に独自のラベルを作成して DOM に追加する必要があります。

AMD スタイル

  domConstruct.create("label", {
            for: "Radio_Button_ID",                
            innerHTML: "Label Name"
        }, durationSettingsContainer);

1.6以前の古いスタイル

  dojo.create("label", {
            for: "Radio_Button_ID",                
            innerHTML: "Label Name"
        }, durationSettingsContainer);
于 2013-09-20T10:15:39.597 に答える