我使用jQuery Mobile制作了一个应用程序。该页面分为几个部分,如下所述:Adding Pages in jQuery Mobile 在第二部分中,它充当自己的页面,一些文本来自使用data-bind的数据库:
<div class="myClass" data-bind="text: MyText"></div>
出现文本,但不能进行字符串操作,我根本无法访问它。
使用:
console.log(document.getElementsByClassName("myClass").innerHTML);
我得到undefined
。
我认为这是因为执行 console.log
后数据绑定发生。
如何访问字符串?
答案 0 :(得分:1)
getElementsByClassName
返回一个DOMElements数组。如果您确定只有一个可以对阵列访问器进行硬编码:
console.log(document.getElementsByClassName("myClass")[0].innerHTML);
答案 1 :(得分:0)
我认为您使用的是 div 标记,但您应该使用输入标记:
<input data-bind="value: MyText" />
如果您只想查看可观察的'MyText'的值,则会在视图模型中查看。这里有example。
答案 2 :(得分:0)
字符串位于变量MyText
的viewmodel中。 Knockout的重点是你没有进入DOM来获取你的数据。它在你的viewmodel中,DOM只反映它。