这个例子我做了几次,之前总是有BUG,目前测试后,确定没有BUG才发上来的,主要功能是实现“我的银行”模块的增删改的功能,这个里面包括了级联列表的区域选择,这部分是难点,在开发过程中,我们应该知道一个概念,在knockoutjs里,如果你的select被绑定了optionsValue属性,那么它将存储这个普通的字符,而如果你没有设置optionsValue,那么它存储的是JS对象。
Html代码
<script src="/Scripts/areaData.js"></script> <div id="bankDiv">
<div data-bind="foreach:bankList">
<ul style="float: left;">
<li><b>银行开户名:</b><span data-bind="text:BankAccountName"></span></li>
<li><b>开户行所在城市:</b>
<select disabled="disabled" data-bind="
options: areaData,
optionsText: 'Name',
value:Province,
optionsCaption: '选择省份'">
</select>
<span data-bind="with:Province">
<select disabled="disabled" data-bind="
visible:$parent.Province,
options: Sons,
optionsText: 'Name',
value:$parent.City,
optionsCaption: '选择城市'">
</select>
</span> <span data-bind="with:City">
<select disabled="disabled" data-bind="
visible:$parent.City,
options: Sons,
optionsText: 'Name',
value:$parent.District,
optionsCaption: '选择区县'">
</select>
</span>
</li>
<li><b>银行名称:</b><span data-bind="text:BankName"></span></li>
<li><b>支行名称:</b><span data-bind="text:BankAddress"></span></li>
<li><b>银行账号:</b><span data-bind="text:BankAccountNumber"></span></li>
<li><a href="javascript:;" data-bind="click:$parent.removeLine">删除</a> <a href="javascript:;" data-bind="click:$parent.edit">编辑</a></li>
</ul>
</div>
<div style="clear: both;"><a href="javascript:;" data-bind="click:add">添加银行</a></div>
<div data-bind="with:selectItem,visible:editing()">
<ul>
<li><b>正在<span data-bind="if:UserBankID==0">新建</span><span data-bind="if:UserBankID>0">编辑</span>银行</b></li>
<li> 银行开户名:<input type="text" data-bind="value:BankAccountName" /></li>
<li>开户行所在城市:
<select data-bind="
options: areaData,
optionsText: 'Name',
value:Province,
optionsCaption: '选择省份'">
</select>
<span data-bind="with:Province">
<select data-bind="
visible:$parent.Province,
options: Sons,
optionsText: 'Name',
value:$parent.City,
optionsCaption: '选择城市'">
</select>
</span> <span data-bind="with:City">
<select data-bind="
visible:$parent.City,
options: Sons,
optionsText: 'Name',
value:$parent.District,
optionsCaption: '选择区县'">
</select>
</span> </li>
<li> 银行名称:<input type="text" data-bind="value:BankName" /></li>
<li> 支行名称:<input type="text" data-bind="value:BankAddress" /></li>
<li> 银行账号:<input type="text" data-bind="value:BankAccountNumber" /></li>
</ul>
<input type="button" data-bind="click:$parent.save" value="保存" />
<input type="button" data-bind="click:$parent.cancle" value="取消" />
</div>
</div>
JS代码,注意,为了测试方便,我将AJAX与数据交换的代码全都注释了
<script type="text/ecmascript">
//银行实体可以从数据库中读出来的,所以不存储ko对象
var BankEntity = function (
UserBankID,
Province,
City,
District,
BankName,
BankAccountName,
BankAccountNumber,
BankAddress,
IsAdd
) {
this.UserBankID = UserBankID;
this.Province = Province;
this.City = City;
this.District = District;
this.BankName = BankName;
this.BankAccountName = BankAccountName;
this.BankAccountNumber = BankAccountNumber;
this.BankAddress = BankAddress;
this.IsAdd = IsAdd;
} //银行对象
var Bank = function (
UserBankID,
Province,
City,
District,
BankName,
BankAccountName,
BankAccountNumber,
BankAddress,
IsAdd
) {
this.UserBankID = UserBankID;
this.Province = ko.observable(Province);
this.City = ko.observable(City);
this.District = ko.observable(District);
this.BankName = BankName;
this.BankAccountName = BankAccountName;
this.BankAccountNumber = BankAccountNumber;
this.BankAddress = BankAddress;
this.IsAdd = IsAdd;
} //我的银行操作
var bankEditor = function () {
var self = this;
var dataArr = [];
dataArr.push(new BankEntity(, "北京市", "市辖区", "石景山区", "bank", "user", "", "beijing"));
dataArr.push(new BankEntity(, "安徽省", "安庆市", "大观区", "bank2", "user2", "", "beijing")); var selDataArr = [];
var p, c, d;
for (var data in dataArr) {
for (var i in areaData) {
if (areaData[i].Name == dataArr[data].Province) {
for (var j in areaData[i].Sons) {
if (areaData[i].Sons[j].Name == dataArr[data].City) {
for (var k in areaData[i].Sons[j].Sons) {
if (areaData[i].Sons[j].Sons[k].Name == dataArr[data].District) { selDataArr.push(new Bank( dataArr[data].UserBankID,
areaData[i],
areaData[i].Sons[j],
areaData[i].Sons[j].Sons[k],
dataArr[data].BankName,
dataArr[data].BankAccountName,
dataArr[data].BankAccountNumber,
dataArr[data].BankAddress,
false));
break;
}
}
}
}
}
}
} self.bankList = ko.observableArray(selDataArr);
self.selectItem = ko.observable();
self.editing = ko.observable(false); //移除同时提交
self.removeLine = function (o) { self.bankList.remove(o); }
//添加
self.add = function () {
self.editing(true);
self.selectItem(new Bank(, "", "", "", "银行名称", "开户名", "账号", "支行名称", true));
};
//编辑
self.edit = function (o) {
self.editing(true);
self.bankList.remove(o)//将上面的实体移除
o.IsAdd = false;
self.selectItem(o);
}; //post
self.save = function (o) {
/*数据传递时,使用字符串或者数值,而在knockoutjs显示时,使用完整对象*/
if (o.Province() == undefined || o.City() == undefined || o.District() == undefined) {
alert("请选择区域信息");
return false;
} self.editing(false);
/*地域显示为文本*/
self.bankList.push(o);//将编辑后的实体添加 }; self.cancle = function (o) {
if (!o.IsAdd)
self.bankList.push(o);
self.editing(false);
}; } var bankModel = new bankEditor()
ko.applyBindings(bankModel, document.getElementById("bankDiv")); </script>
截图如下
aaarticlea/png;base64,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" alt="" />