0

html は次のとおりです。

<form>
    <fieldset data-role="controlgroup" data-type="horizontal" id="buddies" />
</form>

これがJavaScriptです:

for (var i = 0; i < json.length; i++) {
    var usr = json[i];
    var mid = usr.mid;
    var input = '<input id="' + mid + '" type="checkbox"';
    var photo = usr.photo;
    if (typeof photo === 'undefined') {
    photo = '<span class="middle"></span><br/>';
    no_photo_ids[no_photo_ids.length] = mid;
    } else {
    photo = '<span class="middle"><img src="' + photo + '"/></span><br/>';
    if (max_invite_messages-- > 0) {
        input += ' checked="checked"';
    }
    }
    input += '>';
    var label = '<label for="' + mid + '">' + photo + usr.name + '</label>';
    $('#buddies').append(input);
    $('#buddies').append(label);
}
$('#buddies').trigger('create');

次のように、jquery mobile 1.3.2 で問題なく動作します。 ここに画像の説明を入力

しかし、1.4.3 では次のように台無しになりました。 ここに画像の説明を入力

4

1 に答える 1

0

最後に解決策を見つけました:ラジオ ボタンを動的に追加した後、コントロール グループがコントロールを失う - jQuery Mobile

1.3.2 は次のように簡単に作業できます。

$('#buddies').append(...);
$('#buddies').append(...);
...
$('#buddies').trigger('create'); 

1.4.3 は次のようにめちゃくちゃです。

$('#buddies').controlgroup("container").append(...);
$('#buddies').controlgroup("container").append(...);
...
$('#buddies').enhanceWithin().controlgroup("refresh");

今ではかなりうまく機能します:

ここに画像の説明を入力

于 2014-08-11T13:24:32.833 に答える