【发布时间】:2012-08-30 11:15:14
【问题描述】:
我在一个 html(使用 xmlHttp.responseText)页面中创建了一个 javascript,我从一个 aspx 页面请求一个值,该页面在数据库 (MSSQL) 中查询用户名的用户编号。当我加载 html (IE8) 时,我得到了这个“未知的运行时错误行:30”。应该是什么导致了问题?需要帮忙。这是我的代码:
-
这是 HTML 页面和 Javascript:
<!DOCTYPE html> <html> <head> <script type="text/javascript"> function showUsernum(str) { var xmlHttp; if (str=="") { document.getElementById("textExists").innerHTML=""; return; } if (window.xmlHttpRequest) {// code for IE7+, Firefox, Chrome, Opera, Safari xmlHttp=new xmlHttpRequest(); } else {// code for IE6, IE5 xmlHttp=new ActiveXObject("Microsoft.xmlHttp"); } xmlHttp.onreadystatechange=function() { if (xmlHttp.readyState==4 && xmlHttp.status==200) { //alert(str); document.getElementById("textExists").innerHTML=xmlHttp.responseText; } } xmlHttp.open("GET","http://localhost/Base_Data/default.aspx?q="+str,true); xmlHttp.send(); } </script> </head> <body> <form action="" method="post"> <label>UserName <input type="text" name="textUser" id="textUser" onchange="showUsernum(this.value)"> </label> </form> <br/> <div > <form name="form1" method="post" action=""> <label> <div id="textExists">Exists?</div> </label> </form> </div> </body> -
这是我的 ASP 代码。
protected void Page_Load(object sender, EventArgs e) { Response.Expires = -1; SqlConnection conn; string connection = ConfigurationManager.ConnectionStrings ["BaseData"].ConnectionString; conn = new SqlConnection(connection); string sql = "SELECT USERNUM FROM useraccount WHERE USERNAME ='" + Request.QueryString["q"] + "'"; SqlCommand cmd = new SqlCommand(sql, conn); conn.Open(); string contNm = Convert.ToString(cmd.ExecuteScalar()); Response.Write("textExists=" + contNm ); conn.Close(); }
真的很感激任何回应。谢谢。
【问题讨论】:
-
尝试在
Response.Write()和Response.End();之前添加Response.Clear();。 -
嗨影子向导,这对我有用,谢谢!
-
但是我有一个问题,我的html页面是否有可能用完调用asp页面的服务器?我对其进行了测试,但它不起作用..
-
哦,对不起,它仍然有效!谢谢!这为我节省了很多时间!
-
刷新怎么样?我怎么能在这里做。对不起,这很新。谢谢!
标签: javascript asp.net sql sql-server xmlhttprequest