对象没有';在JavaScript中不支持此属性或方法
好吧,我想我又在这里打球了。。我在HTA(用于内部网应用程序)中使用此代码,而不仅仅是使用普通的HTML页面。。当我“提交”我的代码时,我会在第24行收到错误消息“Object不支持此属性或方法”(这是我关闭文件(通过ActiveXObject)的地方) HTML页面使用:对象没有';在JavaScript中不支持此属性或方法,javascript,html,activex,hta,Javascript,Html,Activex,Hta,好吧,我想我又在这里打球了。。我在HTA(用于内部网应用程序)中使用此代码,而不仅仅是使用普通的HTML页面。。当我“提交”我的代码时,我会在第24行收到错误消息“Object不支持此属性或方法”(这是我关闭文件(通过ActiveXObject)的地方) HTML页面使用: <input name="Button1" type="button" value="Submit" onclick="getFormContent()" /> “第24行”指的是“filetext.close
<input name="Button1" type="button" value="Submit" onclick="getFormContent()" />
“第24行”指的是“filetext.close”,尽管我认为它可能与“AllFormContent”或前一行有关?我已经测试了代码,我知道我使用了writeMyFile函数,我知道ActiveXObject工作正常。关于我在这里讨论的内容,有什么想法吗?
谢谢:正如每个人在评论中建议的那样,但没有回答,只需在writeMyFile()上添加妄言即可
Close
是JavaScript中的脚本编写方法。FileSystemObject
更像是VBScript的子过程。要在JavaScript中调用函数和方法,必须使用parantises关闭引用,而在VBScript中,不必使用parantises和多个参数调用Sub
它甚至给出了一个错误(我想是吧?)
JScript和WScript的ActiveXObject文档不多,大部分都在VBScript中介绍,因此在这方面经常会出现混淆。您不需要添加括号吗?即filetxt.Close()-很抱歉,以前没有使用过这个,所以只是一个猜测,我不这么认为,我以前也看到过这个。Close只是关闭csv的流:\n只需将其修复为使用
Close
方法:filetext.Close()
。
// Global Variables First!
var AllFormContent
var ManagerValue
function managerValueTrue(ManagerValue) {
ManagerValue = "Yes"
}
function managerValueFalse(ManagerValue) {
ManagerValue = "No"
}
function getFormContent(ManagerValue) {
var Mudkips = document.getElementById('ManagerName');
var ManagerName = Mudkips.options[Mudkips.selectedIndex].text;
var RandomText = document.getElementById('RandomText').value;
var Comment = document.getElementById('Comments').value;
AllFormContent = ManagerName + ", " + ManagerValue + ", " + RandomText + ", " + Comments
writeMyFile();
}
function writeMyFile(AllFormContent) {
var filesys = new ActiveXObject("Scripting.FileSystemObject");
var filetxt = filesys.OpenTextFile("C:\\MyFile.csv", 8) ;
filetxt.WriteLine(AllFormContent);
filetxt.Close;
}
function writeMyFile(AllFormContent) {
var filesys = new ActiveXObject("Scripting.FileSystemObject");
var filetxt = filesys.OpenTextFile("C:\\MyFile.csv", 8) ;
filetxt.WriteLine(AllFormContent);
filetxt.Close();
}