0

下面的代码一切都很好。但是,如果我按照以下代码运行,则在显示输出时[object Object]会自动显示。我不知道为什么

function buttonClick() 
{
var getFile = parseInt(document.getElementById("number").value);
if (getFile < 455 && getFile > 0)
{
    var content = document.getElementById("def-content");
    var output = new WinJS.UI.HtmlControl(content, { uri: '/def/f' + getFile + '.html' });
    content.innerText = output;
 }
 else
 {
 var fails = new Windows.UI.Popups.MessageDialog("Expected Input Range: 1 to 454");
 fails.showAsync();
  }
  }
4

2 回答 2

1

您尚未将内容保存在 var 中output。这肯定会奏效;

function buttonClick() 
{
var getFile = parseInt(document.getElementById("number").value);
if (getFile < 455 && getFile > 0)
{
    var content = document.getElementById("def-content");
    var output = new WinJS.UI.HtmlControl(content, { uri: '/def/f' + getFile + '.html' });
    content.innerText = "";        
 }
 else
 {
 var fails = new Windows.UI.Popups.MessageDialog("Expected Input Range: 1 to 454");
 fails.showAsync();
  }
  }
于 2013-08-22T11:40:54.400 回答
0

这很明显,因为您正在将对象实例分配给该内容 div。所以它正在调用toString()该实例的方法。var output不是一个String

代替content.innerText = output;

利用

WinJS.UI.processAll();

于 2013-08-22T09:37:03.187 回答