Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/431.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何在TVJS中获取TVML文本字段的节点和键盘引用?_Javascript_Apple Tv_Tvos_Tvml - Fatal编程技术网

Javascript 如何在TVJS中获取TVML文本字段的节点和键盘引用?

Javascript 如何在TVJS中获取TVML文本字段的节点和键盘引用?,javascript,apple-tv,tvos,tvml,Javascript,Apple Tv,Tvos,Tvml,有人在这里问了同样的问题,但没有解释完整的答案,我的评论被编辑了,建议我问一个全新的问题。这是 有人能帮助理解如何从TVML获得对textField节点及其键盘值的最佳引用吗?现在我在Presenter.js中使用下面的代码,一旦用户单击显示表单和键盘的模板中的Done按钮,就可以访问textField,但仍然可以 ITML:undefined不是对象(计算'textField.getFeature')-…/js/Presenter.js 当我使用getFeature(“键盘”)时: 假设是自我

有人在这里问了同样的问题,但没有解释完整的答案,我的评论被编辑了,建议我问一个全新的问题。这是

有人能帮助理解如何从TVML获得对
textField
节点及其键盘值的最佳引用吗?现在我在
Presenter.js
中使用下面的代码,一旦用户单击显示表单和键盘的模板中的
Done
按钮,就可以访问
textField
,但仍然可以

ITML:undefined不是对象(计算'textField.getFeature')-…/js/Presenter.js

当我使用
getFeature(“键盘”)
时:


假设是自我解释的解决方案, 我正在添加以完成更改回调时的文本:

var keyboard = textField.getFeature("Keyboard");
keyboard.onTextChange = function () {
  console.log("onTextChange "+keyboard.text)
}
假设formTemplate是这样的

<formTemplate>
    <banner>
      <title>${formTitle}</title>
      <description class="longDescriptionLayout">${formDescription}</description>
    </banner>
    <textField>${formPlaceholder}</textField>
    <footer>
      <button id="pairingCodeInput">
        <text>Confirm</text>
      </button>
    </footer>
  </formTemplate>

从文档的根开始怎么样?使用
getElementsByTagName
getElementByTagName
getElementById
访问
textField

var doc = navigationDocument.documents[navigationDocument.documents.length-1];
var textField = doc.getElementByTagName("textField")

var value = textField.getFeature("Keyboard").text;
你需要使用

xmlElem.item(i)
而不是

xmlElem.item[i]
var doc = navigationDocument.documents[navigationDocument.documents.length-1];
var textField = doc.getElementByTagName("textField")

var value = textField.getFeature("Keyboard").text;
xmlElem.item(i)
xmlElem.item[i]