gpt4 book ai didi

javascript - 如何将 KnockoutJS 可观察结果打印到控制台?

转载 作者:行者123 更新时间:2023-12-02 14:27:54 26 4
gpt4 key购买 nike

我在从 html 访问数据时遇到问题。

工作原理:用户将选择一个单选按钮,KnockoutJS observables 中的代码将使用所选单选按钮的值更新“data-bind=”text: radioFrom”。我想打印出存储的字符串将变量“data-bind="text: radioFrom”添加到控制台。

我已经尝试这样做,但我不断收到错误,或者更频繁的是,它只是将变量输出为“未定义”。如何将其打印到控制台(或在警报中)?

我的尝试

---------------------------------------------------
var jsonRadioFrom = JSON.stringify(self.radioFrom);
console.log(jsonRadioFrom);
---------------------------------------------------
console.log(self.radioFrom)
---------------------------------------------------
console.log(self.radioFrom.name)
---------------------------------------------------

这些是单选按钮

<td class="label">From:</td>
<td>
<label><input type="radio" value="Dev1" data-bind="checked: radioFrom" />Dev [devName1]</label>
<label><input type="radio" value="Dev2" data-bind="checked: radioFrom" />Dev2 [devName2]</label>
</td>

它保存所选单选按钮的值

<tr>
<td class="label">From:</td>
<td data-bind="text: radioFrom"></td>
</tr>

这是我的 Javascript/KnockoutJS 的一部分

<script>
var TabViewModel = function(){
var self = this;
self.radioFrom = ko.observable("Dev1");
};
ko.applyBindings(new TabViewModel());
</script>

最佳答案

ko.dataFor() 获取与给定 HTML 元素绑定(bind)的 KO View 模型。

ko.dataFor($("body")[0]).radioFrom()

另一个选项是将 TabViewModel 的实例分配给全局变量,以便可以通过自动完成功能从控制台访问它

<script>
var TabViewModel = function(){
var self = this;
self.radioFrom = ko.observable("Dev1");
};
window.viewModel = new TabViewModel();
ko.applyBindings(window.viewModel);
</script>

现在以下内容将起作用:

viewModel.radioFrom()

关于javascript - 如何将 KnockoutJS 可观察结果打印到控制台?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38063910/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com