那如果不用js访问数据库,我想实现这样的功能,怎么实现啊:
从数据库中取出满足条件的记录,然后双击<table>更新对应的那条记录,那怎么处理啊

解决方案 »

  1.   

    <script language="JavaScript" runat="server">
    js代码
    <%
    asp代码
    %>
    </script>
      

  2.   

    swich(学无纸尽) ,你那样不行的,asp代码先于js代码解释执行。
    我建议还不如新弹出一个页面来做更新操作呢
      

  3.   

    to bloomdeng(肯) 呵呵,实事胜于雄辩,你可以试试看
      

  4.   

    可是他的功能是想调用js函数后再实现中间的asp操作亚。
    我写web程序也好多年了,还是有一定自信的
      

  5.   

    你应该用js连接数据库,然后在js中update数据,再断开连接
      

  6.   

    哦?有点看错了,没有那么做过,不太清楚swich(学无纸尽) 的做法。
    确实学无止境亚
      

  7.   

    to;swich
    这样做行不通。我已经用jsp尝试过了。在script里面的<%%>jsp代码会自动执行(每次刷新页面都会自动执行),不管你有没有触动函数。
      

  8.   

    用xmlhttp,请求服务期端的服务,比如把要更新的内容以xml格式发给update.asp,执行数据库操作,然后返回xml格式的操作信息
      

  9.   

    如果是java环境,jsp或servlet都可以
      

  10.   

    我看得有点晕乎~~~请问楼上的各位大虾,在asp,不是.net中,在前台js中可以调用后台的函数吗??
    不论是js写得,还是vb写得?!?!?!
    恕在下愚昧
      

  11.   

    其实有个变通的方法:在页面上做一个隐藏的iFrame,根据需要刷新其中包含的页面就可以了。
      

  12.   

    <%
    '处理过程
    sub upd()
    {
    'update处理
    }
    sub del()
    {
    'delete处理
    }
    sub ins()
    {
    'insert处理
    }
    %>
    <SCRIPT LANGUAGE="JavaScript">
    <!--
    function updateme()
    {
    document.form1.func.value='upd';
    document.form1.submit();
    }
    function deleteme()
    {
    //略
    }
    function insertme()
    {
    //略
    }
    //-->
    </SCRIPT>
    <form name='form1' method='post' action='upd'>
    <input type="hidden" name='func'>
    <input name='testbt' type='button' onclick='updateme()'>
    <input name='testbt' type='button' onclick='deleteme()'>
    <input name='testbt' type='button' onclick='insertme()'>
    </form>
    <%
    if (request("func")="upd")
    call upd()
    end if
    '当然可以使用select语句更好%>
      

  13.   

    记住原则asp控制js;js控制html,你的代码一塌糊涂
      

  14.   

    <script language="javascript">
    <!--
    function doTableClick()
    {
    var XHttp = new ActiveXObject("Microsoft.XMLHTTP");
    XHttp.open("POST","您执行的服务器程序.asp",false);
    XHttp.send();
             clocktimer = setTimeout("doTableClick()", 1000);<!--循环执行该程序
    }
    //-->
    </script>
      

  15.   

    我晕,楼上的搞一次就行了,循环干什么!?
    ---------------------------------
    function onUpdate() {
      //这里将当前行记录的主键,待更新字段的新旧值,表名等等在更新时要用到的信息组合成xml文件,或者干脆在客户端将UPDATE的sql组合出来
      var xml = "<root>"
      xml += "<primaryKeyColumn>" + ...
      xml += "<columns>" + ...
      ... ...
      xml += "</root>"
      try
      {
        XmlHttp = new ActiveXObject("MSXML2.XMLHTTP")
      }
      catch(e)
      {
        XmlHttp = new ActiveXObject("Microsoft.XMLHTTP")
      }
      
      url = "dataService.asp"//这里等于服务器接受服务的地址,可以带参数比如 ?mode=update  XmlHttp.Open( "POST", url, false )
      XmlHttp.setRequestHeader( "Content-Type","text/XML" )
      XmlHttp.Send( xml )  if (XmlHttp.status != 200 || XmlHttp.responseXML.xml == "")
      {
        if (XmlHttp.status == 404) {
        //连不上服务器
        }
        //还有其他几种出错情况,察看MSXML5.0的SDK手册  
        ... ...
      }
      else
      {
        //这里假设此次XMLHTTP操作没有出错,返回信息并解析,或提示业务信息(无法更新的原因),或更新成功转更新页面数据操作
        varXmlData = new ActiveXObject("MSXML.DOMDocument");    
        XmlDoc.loadXML(XmlHttp.responseXML.xml);
        ... ...
      }
    }
      

  16.   

    最后两句写的混乱,改正一下:
    ------------------------------
       var XmlData = new ActiveXObject("MSXML.DOMDocument");    
       XmlData.loadXML(XmlHttp.responseXML.xml);
      

  17.   

    楼主可以考虑通过客户端的javaScript通过调用XMLHTTP来把数据post给一个服务器端的程序接收数据并写库,我给一个客户端和服务器端的程序,希望对楼主要些帮助。
    客户端的javaScript程序:
    <html>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=gb2312">
    <title>无标题文档</title>
    </head><body><script language="JavaScript">
    function AddDataPost(content)
    {
        var oBao = new ActiveXObject("Microsoft.XMLHTTP");
        //特殊字符:+,%,&,=,?等的传输解决办法.
        //Update:2004-6-1 12:22
        //escape(sUserId),escape(sUserName);
        content = escape(content);
        var userInfo = "act=ok&content="+content;
        oBao.open("POST","savePost.asp",false);
        oBao.setRequestHeader("Content-Type","application/x-www-form-urlencoded")
        oBao.send(userInfo);
        //清空输入框数据.
        document.all.content.value="";
        //服务器端处理返回的是经过escape编码的字符串.
        //alert(unescape(oBao.responseText))
    }
    </script>
    <input type="button" onclick="AddDataPost(document.all.content.value)" value="AddDataPost"><br>
    content:<input type="text" name="content"><br></body>
    </html>报务器端的程序:
    <!-- #include file="incs/conn.asp" -->
    <%
    dim act,sql
    act=Trim(Request("act"))if act="ok" then
    sql="insert into test(content) values('" & trim(Request("content")) & "')"
    conn.execute(sql)
    end if
    %>
      

  18.   

    swich的没有错<script language="JavaScript" runat="server">
    js代码
    <%
    asp代码
    %>
    </script>
    ------
    这个是在服务器端运行的。。
    因为有runat="server"
      

  19.   

    最好就是放一个隐藏的frame,然后在那里处理数据库的存储,给人感觉没有刷新页面。用脚本语言,我不知道。
      

  20.   

    这个基本上就是要用XMLHTTP
    没问题,可以访问的。