Обновить ввод текста на jQuery Mobile (темы) - PullRequest
0 голосов
/ 07 сентября 2011

Я хотел бы обновить входной текст после динамического добавления атрибута «data-theme».

Как мне это сделать?

Мне бы хотелось: http://jsfiddle.net/Sgrve/5/

Если я нажму «Изменить тему», я хочу изменить цвет ввода.

Изменение атрибута темы данных, но цвет не изменится.

Ответы [ 2 ]

3 голосов
/ 07 сентября 2011

Live Пример:

JS

$('#addContent').append('<input type="text" value="Default Value" id="newContent" />');
alert('Adding Dynamic content/element');

$('#newContent').val('Hello new Value 123');
alert('Changing the value');

$('#home').trigger('create');
alert('Refreshing JQM controls and look');

HTML

<div data-role="page" id="home"> 
    <div data-role="content">
        <div id="addContent">
            <!-- Add Dynamic content here -->
        </div>
    </div>
</div>

ОБНОВЛЕНИЕ Из вашего комментария

JS

$("#btn1").click(function() {
    $('#txtContent').attr('data-theme','e').removeClass('ui-body-d').addClass('ui-body-e').trigger('create');
});

$("#btn2").click(function() {
    alert("Theme = " + $('#txtContent').attr('data-theme'));
});

HTML

<div data-role="page" id="home"> 
    <div data-role="content">
        <div id="addContent">
            <p><input type="text" value="I want to copy you" data-theme="d" id="txtContent" /></p>
            <p><input type="text" value="Try to look like me" data-theme="e" id="txtContent2" /></p>
            <p><button id="btn1">Change theme</button></p>
            <p><button id="btn2">View theme</button></p>
            <!-- Add Dynamic content here -->
        </div>
    </div>
</div>
0 голосов
/ 07 сентября 2011

Попробуйте запустить

$('#page_id').page('refresh');

или

$('#list_id').listview('refresh');

, если он находится внутри списка.

...