在jquery中绑定值
我正在使用knockout js来设置跨度值。
HTML代码
<span id="spnQStreamChat" data-bind="text: $data.OnLineUserName"></span>
这工作正常,并在用户界面上显示用户名。
我试图从js文件中获取该值。 通过使用下面的代码
alert($(this).attr('data-bind'));
这是服务的结果,如下所示:$ data.OnLineUserName 。 我想要我分配的用户名。
在用户界面中显示Bhagirathi,但在js中它显示了数据绑定中的内容
如何在js文件中获得Name(手段:Bhagirathi)
请帮忙解决这个问题
提前致谢
[编辑]
$(document).on("click", ".btn-mini", function (e) {
alert(ko.contextFor($('.btn-mini')[0]).$data.OnLineUserName);
try {
var connectionId = chatHub.server.getUserConnectionId($(this).attr('data-bind').username, sessionUserName);
}
catch (e) {
//error
}
});
[/编辑]
您可以通过以下方式获取元素的淘汰赛上下文
ko.contextFor($('#spnQStreamChat').get(0))
这将返回一个对象
ko.bindingContext {$parents: Array[1], $root: ViewModel, ko: Object, $data: SomeObject, $parentContext: ko.bindingContext…}
其中$ data是您的$ data对象。 所以要得到这个名字,你需要类似的东西
ko.contextFor($('.button.btn.c_btn').get(0)).$data.OnLineUserName()
当您需要获取$ data对象时,这种方式更加有用。 否则,您可以使用jQuery获取跨度的“文本”
链接地址: http://www.djcxy.com/p/83813.html上一篇: bind value in jquery