Javascript winjs:在显示页面时自动显示意外字符串?
下面的代码一切正常。但是,如果我按照下面的代码运行,在显示输出时,Javascript winjs:在显示页面时自动显示意外字符串?,javascript,windows-store-apps,winjs,Javascript,Windows Store Apps,Winjs,下面的代码一切正常。但是,如果我按照下面的代码运行,在显示输出时,[object object]会自动显示。我不知道为什么 function buttonClick() { var getFile = parseInt(document.getElementById("number").value); if (getFile < 455 && getFile > 0) { var content = document.getElementById("def-
[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();
}
}
功能按钮单击()
{
var getFile=parseInt(document.getElementById(“number”).value);
if(getFile<455&&getFile>0)
{
var content=document.getElementById(“def content”);
var output=new WinJS.UI.HtmlControl(内容,{uri:'/def/f'+getFile+'.html'});
content.innerText=输出;
}
其他的
{
var fails=new Windows.UI.Popups.MessageDialog(“预期输入范围:1到454”);
失败。showAsync();
}
}
这是显而易见的,因为您正在将对象的实例分配给该内容div。因此,它正在对该实例调用toString()
方法<代码>var输出不是字符串
而不是content.innerText=输出代码>
使用
WinJS.UI.processAll()代码>您尚未将内容保存在var输出中。这肯定会奏效
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();
}
}
功能按钮单击()
{
var getFile=parseInt(document.getElementById(“number”).value);
if(getFile<455&&getFile>0)
{
var content=document.getElementById(“def content”);
var output=new WinJS.UI.HtmlControl(内容,{uri:'/def/f'+getFile+'.html'});
content.innerText=“”;
}
其他的
{
var fails=new Windows.UI.Popups.MessageDialog(“预期输入范围:1到454”);
失败。showAsync();
}
}
如果我使用此选项,则如果文本框中给出了其他数字,则内容不会更改。它显示在第一个内容下面。如果我把WinJS.UI.processAll()放进去,让我详细解释一下;而是content.innerText=输出;根据我的代码,我有一个文本框来获得用户的输入,如果输入3,它将显示f3.html,同样,它将显示html页面。使用WinJS.UI.processAll()时,如果按3,则显示f3.html。然后,如果用户输入4,f4.html将显示在f3.html下。f3.html不隐藏。然后用户输入6,f6.html显示在f3.html和f4.html下。但是,虽然使用innertext,但它在中显示单个页面。但显示[对象对象]——