我是 JQM 的新手。我在通过 json 对象循环时添加单选按钮时遇到了一些问题。问题是当 trigger('create') 在控制组上运行时,控制组保持为空。
演示: http: //m.dzemo.se/
HTML:
<div data-role="page">
<div data-role="header">
<h1>Visning</h1>
</div><!-- /header -->
<div data-role="content" id="content">
<form action="" method="POST">
<div class="form-holder left">
<fieldset data-role="controlgroup" id="visning-dates">
<h2>Visning:</h2>
</fieldset>
</div>
<div class="form-holder left border-left">
<h2>Plats</h2>
<img src="img/map.png" class="map" />
</div>
<div class="form-holder left">
<div class="input-holder">
<label for="firstname">Förnamn:</label>
<input type="text" name="firstname" id="firstname" />
</div>
<div class="input-holder">
<label for="phone">Telefon:</label>
<input type="tel" name="phone" id="phone" />
</div>
</div>
<div class="form-holder left border-left">
<div class="input-holder">
<label for="lastname">Efternamn:</label>
<input type="text" name="lastname" id="lastname" />
</div>
<div class="input-holder">
<label for="email">Epost:</label>
<input type="email" name="email" id="email" />
</div>
<div class="input-holder">
<input type="submit" name="submit" id="submit" data-theme="b" value="Skicka" />
</div>
</div>
</form>
</div><!-- /content -->
<div data-role="footer" data-position="fixed">
Lite content.
</div>
Javascript:
$(document).bind('pageinit', function() {
var dates = {
"date" : [
{
'day' : 24,
'month' : 'Oktober',
'year' : 2012
},
{
'day' : 1,
'month' : 'Januari',
'year' : 2013
}
]
};
$.each( dates, function( index, value ){
$.each( dates[index], function( i, val) {
var data = '<input type="radio" name="radio-visnings-date" value="' + this.day + ' ' + this.month + ' ' + this.year + '"/><label for="radio-visnings-date">' + this.day + ' ' + this.month + ' ' + this.year + '</label>';
$('#visning-dates').append( data ).trigger('create');
});
});
});
我已经检查了console.log的数据是否正确,结果看起来像预期的那样,但我只是没有在页面上得到任何元素。
编辑:将 Javascript 更改为:
$(document).bind('pageinit', function() {
var dates = {
"date" : [
{
'day' : 24,
'month' : 'Oktober',
'year' : 2012
},
{
'day' : 1,
'month' : 'Januari',
'year' : 2013
}
]
};
var data = '';
$.each( dates, function( index, value ){
$.each( dates[index], function( i, val) {
data += '<input type="radio" name="radio-visnings-date" value="' + this.day + ' ' + this.month + ' ' + this.year + '"/><label for="radio-visnings-date">' + this.day + ' ' + this.month + ' ' + this.year + '</label>';
});
});
$('#visning-dates').append( data ).trigger('create');
$('#visning-dates').controlgroup('refresh');
});
我现在得到了 DOM 中的元素,但没有 jqm 基本样式。:/