我使用Datebox jQM插件创建了以下customflipbox:
<div data-role="fieldcontain">
<label for="cf" data-i18n="config.localelabel"></label>
<input name="cf" type="date" data-role="datebox" id="cf" data-options='{"mode": "customflip",
"customData": [ {
"input": true,
"name": "",
"data": ["Italiano","English","Espanol","Deutsch","Francais","русский"]
}],
"useNewStyle": false,
"overrideStyleClass": "ui-icon-dice",
"useButton":false,
"useFocus" : true
}' />
当我选择一个值时,我需要用所选值填充cf输入字段,我试过:
$('cf').on('datebox',function(p,e){
if (p.method === 'set') {
e.stopImmediatePropagation();
$(this).val(selectdata[p.value]);
}
});
在'datebox'事件中,但似乎我能得到的最多的是该字段填充了所选值的索引,但我需要实际的字符串(例如英语)。
有什么见解?
谢谢。 微米。
答案 0 :(得分:2)
在代码中添加数据数组,然后您可以在&#39; set&#39;中引用它。事件:
<div data-role="fieldcontain">
<label for="cf" data-i18n="config.localelabel"></label>
<input name="cf" type="date" data-role="datebox" id="cf" data-options='{"mode": "customflip",
"useNewStyle": false,
"overrideStyleClass": "ui-icon-dice",
"useButton":false,
"useFocus" : true
}' />
在代码中创建一个名为selectdata的全局变量,它是值数组:
var selectdata = ["Italiano","English","Espanol","Deutsch","Francais","русский"];
jQuery.extend(jQuery.mobile.datebox.prototype.options, {
'customData': [{
'input': true,
'name': '',
'data': selectdata
}],
"useHeader": false,
"overrideCustomSet": "OK"
});
$('#cf').on('datebox', function (e, p) {
if (p.method === 'set') {
e.stopImmediatePropagation();
$(this).val(selectdata[p.value]);
}
});
<强> DEMO 强>