从Javascript调用ASP经典函数

Call ASP Classic Function from Javascript

本文关键字:经典 函数 ASP 调用 Javascript      更新时间:2023-09-26

我在本地数据库页面上有一个文件,在提示用户确认删除后,该文件需要能够删除客户端。

函数deleteClient已经存在,并且非常长和详细,因为以适当的方式从数据库中删除信息需要几个步骤。

我已经设置了页面,这样当用户单击删除按钮时,它会调用javascript函数confirmdelete(),然后它应该调用ASP函数来执行操作。

如何从javascript函数调用ASP函数?

<SCRIPT TYPE="text/javascript">
     function confirmdelete(){
         if (window.confirm('Are you sure you want to delete client?'){
                  // How do I call deleteClient here?
         }else
              return false;
     }
</SCRIPT>
<%
  Function deleteClient
    ...
    ...
  End Function
%>
<FORM NAME=addclient METHOD=post ACTION="...">
    <INPUT type=Submit name=btnSubmit value="Delete" onClick="confirmdelete()">
</FORM>

Yuriy的答案是正确的,这是为了补充它,而不是与它竞争。

当页面加载时,您的ASP代码由服务器(因此"服务器端")进行解释。您的Javascript在加载后由浏览器(因此称为"客户端")进行解释。这意味着你不能直接用js调用ASP代码。

使用条件语句检查表单提交。使用代替function deleteclient

<%  
If Request.Form("btnSubmit") <>"" Then
...
...
End If
%>

你的表单不需要动作属性,因为你不会发布到不同的页面

注意-使用小写标签名称并引用您的属性被认为是一种很好的做法,例如

<form name="addclient" method="post">

不要在确认函数本身中执行此操作。确认后,只需提交一个表单,其中包含您的ASP页面作为操作和一些具有特定值的隐藏字段。

在服务器端,只需检查Request.Form中的值,如果它被传递了,就执行函数。

当然,对于删除之类的事情,可靠的服务器端验证是必须的。

请注意,它应该是onclick="return confirmdelete()",您的确认应该简单地返回truefalse