将参数从 javascript 函数传递到批处理文件

问题描述 投票:0回答:1

我正在尝试为客户端创建一个 html 页面,他可以从中启动或停止任何远程桌面上的特定窗口服务。总数范围内的服务数量约为 20 个。我不想创建 20(启动)+ 20(停止)+ 20(重新启动)批处理文件,而是希望拥有 1 个带有 if else 条件的批处理文件,我可以在 javascript 函数中传递参数。 html页面的代码如下:

<!DOCTYPE html>   
<html>
<head>
<script type="text/javascript">
MyObject = new ActiveXObject("WScript.Shell")
function start()
{
MyObject.Run("\"E:\\start.bat\"");
}
function stop()
{
MyObject.Run("\"E:\\stop.bat\"");
}
function restart()
{
MyObject.Run("\"E:\\restart.bat\"");
}
</script>
<title>Our Company</title>
</head>
<body>
<table background-color:#f1f1c1; border="1" style="width:50%" align="center">
<tr>
<th style="text-align:center">Instance Name</th>
<th style="text-align:center">Accessible URL</th> 
<th style="text-align:center">Status</th>
<th style="text-align:center">Start</th>
<th style="text-align:center">Stop</th>
<th style="text-align:center">Restart</th>
</tr>
<tr height="70%">
<td style="text-align:center">netadds</td>
<td style="text-align:center">
<a href="http://localhost/">localhost:netadds</a></td> 
<td style="text-align:center">Running</td>
<td style="text-align:center"><button onclick="start()">Start</button></td>
<td style="text-align:center"><button onclick="stop()">Stop</button></td>
<td style="text-align:center"><button onclick="restart()">Restart</button>          </td>
  </tr>
</table>
</body>
</html>

start.bat 中的代码是:

@echo off
net start AMAPTestJetty8i0T1
if ERRORLEVEL 1 goto error
exit
:error
echo Could not start service
pause

请建议我如何批量应用 if else 语句并在启动函数中传递参数。

javascript html batch-file
1个回答
1
投票

将参数传递到 BAT 文件:

MyObject.Run("E:\start.bat The_parameter1 The_parameter2");

获取 BAT 文件中的参数:

echo parameter 1 = %1
echo parameter 2 = %2

在 BAT 中进行

IF ELSE
测试

net start AMAPTestJetty8i0T1
if %ERRORLEVEL%==1 (goto error
    ) else (
 goto NoError)

或使用 条件命令分隔符 :

net start AMAPTestJetty8i0T1 && goto NoError || goto Error
© www.soinside.com 2019 - 2024. All rights reserved.