|
是个很好的东西,我在用,很爽,但有点小问题
此文章由 zbrong 原创或转贴,不代表本站立场和观点,版权归 oursteps.com.au 和作者 zbrong 所有!转贴必须注明作者、出处和本声明,并保持内容完整
请看完这两部分再动手试:1、代码; 2、问题所在。
1、代码:
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
<title>Untitled Page</title>
<script src="/Scripts/jquery-1.4.2.min.js" type="text/javascript"></script>
<script src="/Scripts/jquery.tmpl.min.js" type="text/javascript"></script>
<script src="/Scripts/knockout-1.2.0.js" type="text/javascript"></script>
<script src="/Scripts/json2.js" type="text/javascript"></script>
</head>
<body>
<div id="anwserList" data-bind='template:{name:"personTmplRadios", foreach:persons}'></div>
<input type="button" onclick="gogo()" value="go go" />
<script id="personTmplRadios" type="text/html">
<input type="text" data-bind="value:name" style="width: 385px" />
<input type="radio" name="good" data-bind="checked:isGood" />is good <br />
</script>
<script type="text/javascript">
var person = function (thePerson, good) {
return {
name: ko.observable(thePerson),
isGood: ko.observable(good)
}
};
var viewModelPersons = {
persons: ko.observableArray([
new person("aaa", false),
new person("bbb", false),
new person("ccc", false)
])
};
ko.applyBindings(viewModelPersons)
function gogo() {
alert(ko.toJSON(viewModelPersons))
}
</script>
</body>
</html>
2、问题所在:
我将obsevable字段绑定到radiobuttonlist,二者 应该保持同步更改,可是你看输出,数据只能从false被更改为on,而没有随着界面的变化从on更改为false。如果你先点击每个radio,再点击gogo按钮,结果输出全是on!
不知道是不是我哪里错了,望你有解决办法分享。
总体来说,我认为这是个好东西。 |
|