Hier ein Widget, das eine Dropdownlist mit einem Hash befüllt (Optionsname und Text getrennt):
{% macro select_hash(id, gad, items, text) %}
<div align="center">
<label>
<select id="{{ uid(page, id) }}" data-widget="basic.select_hash" data-item="{{ gad }}" data-native-menu="false" data-placeholder="false" />
{% if text != '' %}
<option>{{ text }}</option>
{% endif %}
{% for key, item in items %}
<option value="{{ key }}">{{ item }}</option>
{% endfor %}
</select>
</label>
</div>
{% endmacro %}
Code für visu.js
$(document).delegate('select[data-widget="basic.select_hash"]', {
'update': function (event, response) {
$(this).val(response).selectmenu('refresh');
$("#"+this.id+" option[value='"+response+"']").attr('selected',true);
},
'change': function (event) {
// DEBUG:
console.log("[basicext.select_uni] change '" + this.id + "':", $(this).prop("value"));
io.write($(this).attr('data-item'), $(this).val() );
}
});
Beispiel für den Einbau:
{{ basic.select_hash('messageTTS', 'messageDevice', {'TTSall':'alle','TTS':'Büro','BadTTS':'Bad','WzTablet':'Wohnzimmer','FlurTablet':'Flur'},'bitte wählen') }}
Vielleicht kann es jemand gebrauchen.
Perfekt, genau das wonach ich schon länger gesucht hatte! Vielen Dank, funktioniert prima!
Gruß, Bruece-lee
Genial wäre es noch, wenn der Hash aus einem reading gelesen werden könnte. Hast Du dazu vielleicht eine Idee? Wäre praktisch für Playlisten oder Ähnliches.
Zitat von: dev0 am 27 November 2015, 09:20:14
Genial wäre es noch, wenn der Hash aus einem reading gelesen werden könnte. Hast Du dazu vielleicht eine Idee? Wäre praktisch für Playlisten oder Ähnliches.
Da ich mir gerade ein Widget für den SB_PLAYER baue, wäre das toll - gibt's da mittlerweile was?