自定义js做法:

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title></title>
<style>
#content1{padding: 20px;}
</style>
</head>
<body>
<div id="content1">
<select id="userNameList">
</select>
<b id="selectValue"></b>
</div> <script type="text/javascript" src="js/jquery.js"></script>
<script type="text/javascript" src="js/knockout30.js"></script>
<script>
function RenderSelectOptions(datas,selectNode){
var optionString = "";
for(var i in datas){
optionString += "<option value="+datas[i]+">"+datas[i]+"</option>";
}
selectNode.html(optionString);
}
$(function(){
var userName = ['党---','兴---','明---'];
var userNameList = $('#userNameList'); RenderSelectOptions(userName,userNameList); $('#userNameList').change(function(){
var selectValue = $('#selectValue');
selectValue.html(userNameList.val());
});
});
</script>
</body>
</html>

knockout方法

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title></title>
<style>
#content1{padding: 20px;}
</style>
</head>
<body>
<div id="content1">
<select id="userNameList" data-bind="options:userNames,selectedOptions:selectedUserName">
</select>
<b id="selectValue" data-bind="html:selectedUserName"></b>
</div> <script src="js/jquery.js"></script>
<script src="js/knockout30.js"></script>
<script>
$(function(){
var ViewModel = function(){
var self = this;
self.userNames = ko.observable(['aaa','bbb','ccc']);
self.selectedUserName = ko.observable("");
}
var currentViewModel = new ViewModel();
ko.applyBindings(currentViewModel);
});
</script>
</body>
</html>

 但:这样option上value和显示的文本都是数组里的值,当需要两个不一样时,该肿么办呢:

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title></title>
<style>
#content1{padding: 20px;}
</style>
</head>
<body>
<div id="content1">
<select id="userNameList" data-bind="options:userNames,optionsText:'Key',optionsValue:'Value',selectedOptions:selectedUserName">
</select>
<b id="selectValue" data-bind="html:selectedUserName"></b>
</div> <script src="js/jquery.js"></script>
<script src="js/knockout30.js"></script>
<script>
$(function(){
var ViewModel = function(){
var self = this;
//self.userNames = ko.observable(['aaa','bbb','ccc']);
self.userNames = ko.observable([{Key:'tom',Value:'1'},{Key:'jerry',Value:'2'},{Key:'dang',Value:'3'}]);
self.selectedUserName = ko.observable();
}
var currentViewModel = new ViewModel();
ko.applyBindings(currentViewModel);
});
</script>
</body>
</html>

最新文章

  1. 移动端web自适应解决方案: adaptive.js
  2. arpg网页游戏之地图(四)
  3. 利用iframe无刷新上传文件的坑
  4. 蓝牙(2)用BluetoothAdapter搜索蓝牙设备示例
  5. pomelo流程
  6. python基础知识六
  7. ListView之ArrayAdapter
  8. Android入门——UI(2)
  9. OutputDebugString 输出信息到调试器
  10. java.io.IOException: Stream closed
  11. Spring MVC Restful Put方法无法获取参数值
  12. 米卡 Mica Logo 存放处
  13. step_by_step_ABP规约模式
  14. JavaScript中date日期的n种方法
  15. BBS-项目流程分析-表的创建
  16. tail 命令(转)
  17. 【Udacity】解决:字幕遮挡视频内容怎么办?Udacity字幕大小调整
  18. Memcache的客户端连接系列(四) PHP
  19. poi设置背景色
  20. c语言实践打印字母三角形

热门文章

  1. My97 DatePicker普通调用
  2. C#中各种计时器 Stopwatch、TimeSpan
  3. Error:dojo.data.ItemFileWriteStore:Invalid item argument
  4. Flash Builder4.0新建Flex应用程序切换主题出错
  5. 基于jQuery的一个提示功能的实现
  6. CSS的继承性与优先级
  7. 小白学爬虫-在无GUI的CentOS上使用Selenium+Chrome
  8. 网络协议笔记-网络层-路由器的作用、IP地址
  9. java基础之二分法查找
  10. 让安卓app支持swf的一个播放器,和自己编写的音乐管理程序