按钮单击SQL中的asp到删除行 - 经典的asp和vbscript

时间:2020-12-16 01:35:37

I've created a webpage in asp to display a table from SQL database. I then added Buttons to each table row to update and delete each row code -

我在asp中创建了一个网页,用于显示SQL数据库中的表。然后我在每个表行添加了按钮来更新和删除每一行代码 -

    do while not objRS.EOF

    %>

    <tr> 
        <td><%= objRS("Id") %> </td>
        <td><%= objRS("Name") %> </td>
        <td><%= objRS("Address") %></td>
        <td><%= objRS("Suburb") %></td>
        <td><%= objRS("Postcode") %></td>
        <td><%= objRS("Age") %></td>
        <td><%= objRS("Email") %></td>
        <td><Center><input type="submit" value="Update"></Center></td>
        <td><center><input type="Submit" onclick="delete(<%= objRS("Id") %>)" value="Delete"></center></td>
    </tr>
    <%
        objRS.MoveNext
        loop    
        objCon.close
    %>

also i the code to delete -

我也删除了代码 -

    Function delete(index)

        Dim objCon, objRS, dSQL      
        set objCon = CreateObject("ADODB.Connection")
        objCon.open "Provider=SQLOLEDB.1;Password=xxxx;Persist Security Info=True;User ID=xxxx;Initial Catalog=Customer;Data Source=PC"

        dSQL = "DELETE FROM Customer WHERE Id=" & index

        objCon.execute(dSQL)            
        objCon.close     
    End Function

I've looked everywhere but cant seem to find how to identify each different button and delete the corresponding row from the database

我到处寻找但似乎无法找到如何识别每个不同的按钮并从数据库中删除相应的行

2 个解决方案

#1


2  

In each row have:

在每一行都有:

<a href="Page.asp?action=delete&ID=<%= objRS("Id") %>">Delete this</a>

Then the receiving page, have the code:

然后是接收页面,有代码:

Dim strAction

strAction = request.querystring("action")
if(strAction = "delete")

    'Verify ID
    'Perform deletion
    'Redirect

end if

This is how you would traditionally delete it. In your example, you seem to want an AJAX function. Add this to the top of your page:

这就是传统上删除它的方法。在您的示例中,您似乎想要一个AJAX函数。将其添加到页面顶部:

<script type="text/javascript">
    function delete(RecordID){
        alert(RecordID);
    }
</script>

That's the Javascript function you are trying to call when delete is clicked. So that would be your template to call an AJAX request to the delete script if that is the way you want to do it.

这是您在单击删除时尝试调用的Javascript函数。因此,如果您希望这样做,那么这将是您向删除脚本调用AJAX请求的模板。

#2


1  

It looks like you're trying to invoke ASP code with Javascript. That ain't gonna work.

看起来你正试图用Javascript调用ASP代码。那不行。

If you had your delete function in a separate ASP script, then you can create a Javascript method to handle the button clicks and call the other ASP script, either directly with a GET or with an Ajax call. Then you'd have to reload the original page.

如果您在单独的ASP脚本中有删除功能,那么您可以创建一个Javascript方法来处理按钮单击并调用另一个ASP脚本,可以直接使用GET或使用Ajax调用。然后你必须重新加载原始页面。

#1


2  

In each row have:

在每一行都有:

<a href="Page.asp?action=delete&ID=<%= objRS("Id") %>">Delete this</a>

Then the receiving page, have the code:

然后是接收页面,有代码:

Dim strAction

strAction = request.querystring("action")
if(strAction = "delete")

    'Verify ID
    'Perform deletion
    'Redirect

end if

This is how you would traditionally delete it. In your example, you seem to want an AJAX function. Add this to the top of your page:

这就是传统上删除它的方法。在您的示例中,您似乎想要一个AJAX函数。将其添加到页面顶部:

<script type="text/javascript">
    function delete(RecordID){
        alert(RecordID);
    }
</script>

That's the Javascript function you are trying to call when delete is clicked. So that would be your template to call an AJAX request to the delete script if that is the way you want to do it.

这是您在单击删除时尝试调用的Javascript函数。因此,如果您希望这样做,那么这将是您向删除脚本调用AJAX请求的模板。

#2


1  

It looks like you're trying to invoke ASP code with Javascript. That ain't gonna work.

看起来你正试图用Javascript调用ASP代码。那不行。

If you had your delete function in a separate ASP script, then you can create a Javascript method to handle the button clicks and call the other ASP script, either directly with a GET or with an Ajax call. Then you'd have to reload the original page.

如果您在单独的ASP脚本中有删除功能,那么您可以创建一个Javascript方法来处理按钮单击并调用另一个ASP脚本,可以直接使用GET或使用Ajax调用。然后你必须重新加载原始页面。