繁体   English   中英

使用JQuery的经典ASP查询中的动态SQL

[英]Dynamic SQL in Classic ASP query using JQuery

我认为这应该可行,但是由于我对JQuery的经验非常有限,所以我不确定如何实现这一点。

我有一个查询SQL数据库的代码块,我希望能够使用按钮或在输入框中键入内容来动态“更改”查询(使用WHERE [Printer Make] =)。 我将如何实现?

这是我当前的静态查询代码:

sql = "SELECT * FROM [Printer_Consumables] "
rs.open sql,conn
response.write("<div id='table-scroll'><p>Current Stock Levels</p>")
response.write("<table class='tbl'><tr><th>Printer</th><th>Item</th><th>Stock Level</th></tr>")
i = 0
while not rs.eof
    if rs("Number") = 1 then
        stocklevel = "#0000FF;"
    elseif rs("Number") = 0 then
        stocklevel = "#FF0000;"
    else
        stocklevel = "#008C00;"
    end if
    If i Mod 2 = 1 Then
        response.write("<tr style='background: #FFFFFF;' class='small'>")
    Else
        response.write("<tr style='background: #CCCCCC;' class='small'>")
    End If
    response.write("<td>" & rs("Printer Make") & " " & rs("Printer Model") & "</td><td>" & rs("Type") & "</td><td style='color:" & stocklevel & ";'>" & rs("Number") & "</td></tr>")
    rs.movenext
    i = i + 1
wend
response.write("</table></div>")
rs.close

将您的当前代码放在一个新页面中,命名为myfunction.asp并在收到如下条件时对其进行编辑以更改sql条件:

sql = "SELECT * FROM [Printer_Consumables] "

if request("PrinterMake")<>"" then
sql = "SELECT * FROM [Printer_Consumables] where [Printer Make]='"&request("PrinterMake")&"'"
end if

rs.open sql,conn
response.write("<div id='table-scroll'><p>Current Stock Levels</p>")
response.write("<table class='tbl'><tr><th>Printer</th><th>Item</th><th>Stock Level</th></tr>")
i = 0
while not rs.eof
    if rs("Number") = 1 then
        stocklevel = "#0000FF;"
    elseif rs("Number") = 0 then
        stocklevel = "#FF0000;"
    else
        stocklevel = "#008C00;"
    end if
    If i Mod 2 = 1 Then
        response.write("<tr style='background: #FFFFFF;' class='small'>")
    Else
        response.write("<tr style='background: #CCCCCC;' class='small'>")
    End If
    response.write("<td>" & rs("Printer Make") & " " & rs("Printer Model") & "</td><td>" & rs("Type") & "</td><td style='color:" & stocklevel & ";'>" & rs("Number") & "</td></tr>")
    rs.movenext
    i = i + 1
wend
response.write("</table></div>")
rs.close

因此,您需要一个新页面,该页面的div带有一定的ID,该ID包括默认情况下没有任何条件的函数文件。 然后,您可以使用Jquery load重新加载此div的内容,其中将条件发送到myfunction.asp以检索新的数据类型:

<html>
<head>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.2/jquery.min.js"></script>
</head>
<body>
<div id="mydiv">
<!--#include file="myfunction.asp"-->
</div>
<br>
<a onclick="changecondition('SONY')">SONY</a>

<script type="text/javascript">
function changecondition(brand){
$("#mydiv").load("myfunction.asp",{PrinterMake:brand});
}
</script>

</body>
</html>

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM