我在Backbone应用程序中设置了一个编辑表单,其中填充了模型数据。我目前没有使用ModelBinder但是想切换到ModelBinder。
我有一个选择框,其中值映射到模型中的id,选定的选项文本应映射到模型上的字符串字段。用户可以选择从下拉列表中填充模型,该下拉列表将填充placeId和placeName,或者使用文本框仅填充placeName。
我的问题是如何将这个 - $("#placeName option:selected").text()
放入placeName选择器?
这是我的模型和绑定对象:
// The Place Model
App.Models.Place = Backbone.Model.extend({
defaults: {
placeName: "",
placeId: ""
}
});
// Backbone Model Binder bindings
bindings: {
placeName:[
{selector: '$("#placeName option:selected").text()'},
{selector: '#textInputPlaceName'}] ,
placeId:'[name=placeName]'
}
这是HTML。在UI中有一个复选框,用于选择下拉列表或输入字段
<select id="placeName" name="placeName" class="inline">
<option value="0" selected="selected"></option>
<option value="444">exit 1</option>
<option value="555">exit 2</option>
<option value="666">exit 3</option>
</select>
<input id="textInputPlaceName" name="textInputPlaceName class="inline" disabled>
以下是小提琴中相同的代码:http://jsfiddle.net/kDBvQ/
答案 0 :(得分:0)
我最终设置并检索了modelBinder绑定之外的函数中的值。我可能已经使用了转换器,但没有它就更简单。