0

编辑 - 最好问我是否需要将 VBScript 变量 NAME 中的值获取到 ASP 表单中,除了将其打印到屏幕之外,任何引用该变量的尝试都将被忽略。

这是在内部网上,仅供内部使用,并且 IE 在最低安全设置下使用,因此 activeX 无需提示即可运行。

我有一个 vbscript,它在运行时会返回我要查找的内容 - 客户端 PC 名称

<script language="vbscript"> 
<!--

    Set objNetwork = CreateObject("WScript.Network") 

    NAME= objNetwork.computername

    document.write(NAME)

//--> 

</script> 

当我运行以下命令时,我得到了服务器名称:

<% 
    Set objNetwork = CreateObject("WScript.Network") 

    strNAME = objNetwork.computername

    response.write("Value of strNAME variable: " & strNAME & "<br>")
%>

我需要 VBScript 返回的实际 PC 名称,并且需要将其插入到表单中。使用 ASP 我可以填写表格,但它给了我服务器名称,我需要 VBScript PC 客户端名称。我无法弄清楚如何将 VBScript 名称放入 ASP 表单中。

4

2 回答 2

1

您需要客户端 VBScript:

<script language="vbscript"> 
<!--

Function SetComputerName
    Set objNetwork = CreateObject("WScript.Network") 
    NAME=objNetwork.computername
    Document.Forms("form1").Elements("computername").Value = NAME
End Function

SetComputerName()

//--> 

</script> 

将表单名称或 ID 替换为“form1”,输入元素名称应包含计算机名称而不是“计算机名”。

该脚本仅在放置在 HTML 标记的末尾或至少在表单 HTML 之后才有效,如果您希望将其放置在上面,请将此类内容添加到您的 body 标记中:<body onload="SetComputerName()">

于 2012-08-19T07:06:15.147 回答
0

在代码块之外生成 HTML,如下所示。这是正确的语法,但通常客户端名称不会通过浏览器公开,除非您使用 IE 和某种 Active-X 控件。

<input type="hidden" value="<%=strNAME%>" />
于 2012-08-16T17:43:47.850 回答