【ajax】c#写进response,输出来的确是页面html代码!看看什么错误?

fihuang 2009-03-03 10:16:51

using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;

public partial class getValue : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
string connectionString = "Data Source=MINFO66;Persist Security Info=True;User ID=minfodb;Password=minfodba;Unicode=True";
System.Data.OracleClient.OracleConnection oracle_conn = null;
System.Data.OracleClient.OracleCommand oracle_cmd = null;

try
{
string question_title = Request.QueryString["question_title"];
oracle_conn = new System.Data.OracleClient.OracleConnection(connectionString);
oracle_cmd = oracle_conn.CreateCommand();
oracle_conn.Open();
oracle_cmd.CommandText = @"SELECT QUESTION_TITLE
FROM BAIDUZHIDAO_QUESTIONS
WHERE QUESTION_TITLE LIKE " + "\"" + question_title + "%\"";
string result = Convert.ToString(oracle_cmd.ExecuteScalar());
Response.Write(result);
}
catch (Exception excpt)
{
Console.WriteLine(excpt);
}
finally
{
if (oracle_cmd != null)
{
oracle_cmd.Cancel();
oracle_cmd.Dispose();
}
if (oracle_conn != null)
{
oracle_conn.Close();
oracle_conn.Dispose();
}
}
}
}

还有就是我在这段代码里设置了断点,但是调试的时候没经过这里!
...全文
311 19 打赏 收藏 转发到动态 举报
写回复
用AI写文章
19 条回复
切换为时间正序
请发表友善的回复…
发表回复
limpid_123 2009-03-03
  • 打赏
  • 举报
回复
private void BindGridView()
{
string QueryCon = "SELECT id,username,userpwd,limit FROM member";
SqlConnection NorthWindCon = new SqlConnection(ConStr);
SqlDataAdapter NorthWindDa = new SqlDataAdapter(QueryCon,ConStr);
DataSet Ds = new DataSet();
NorthWindDa.Fill(Ds, "member");
GridView1.DataKeyNames = new string[] { "id" };
DataView Dv = Ds.Tables["member"].DefaultView;
//排序表达式
string SortExpress = (string)ViewState["username"] + " " + (string)ViewState["Direction"];
Dv.Sort = SortExpress;
//GridView1.DataSource = Ds.Tables["member"];
//绑定数据源
GridView1.DataSource = Dv;
GridView1.DataBind();
}
protected void Page_Load(object sender, EventArgs e)
{

SortExprssion();
SetGridView();
if (!IsPostBack)
{
ViewState["username"] = "id";
ViewState["Direction"] = "ASC";
BindGridView();
}
}

一般Page_Load()里面都只是做初始化,不做其他操作的,把数据库连接写到另外一个函数就行了,看着也清晰
無葉 2009-03-03
  • 打赏
  • 举报
回复
你没有启用 Ajax那个控件的自动返回吧

别人的我就不太清楚了

  • 打赏
  • 举报
回复
你还是把你的Ajax的代码也贴出来吧。
fihuang 2009-03-03
  • 打赏
  • 举报
回复
[Quote=引用 8 楼 pztx1992 的回复:]
测试空很简单的,自己测一下

检测函数是否被执行,也很简单,response.write("hello,world");试试看


如果确定是没执行到,那么就正常了,ajax不熟悉,自己研究下吧
[/Quote]确是是没有执行到最上面的代码!这是怎么回事儿?
fihuang 2009-03-03
  • 打赏
  • 举报
回复
[Quote=引用 9 楼 linlin1972 的回复:]
result字符串里有Html的特殊符号,比如 <、>等等。
调试看下result的结果,或者在数据库里执行下SQL语句看下结果。
[/Quote]我再数据库里执行过了 这个没有问题的
linlin1972 2009-03-03
  • 打赏
  • 举报
回复
result字符串里有Html的特殊符号,比如<、>等等。
调试看下result的结果,或者在数据库里执行下SQL语句看下结果。
pztx1992 2009-03-03
  • 打赏
  • 举报
回复
测试空很简单的,自己测一下

检测函数是否被执行,也很简单,response.write("hello,world");试试看


如果确定是没执行到,那么就正常了,ajax不熟悉,自己研究下吧

fihuang 2009-03-03
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 pztx1992 的回复:]
oracle_cmd.ExecuteScalar() 是不是null?
[/Quote]不会 我感觉ajax调用的那个页面里的pageload里的代码没有被执行!就是我再最上面贴出来的代码,是写在pageload()里的!
pztx1992 2009-03-03
  • 打赏
  • 举报
回复

object o = null;
string s = Convert.ToString(o);//s为""
pztx1992 2009-03-03
  • 打赏
  • 举报
回复
oracle_cmd.ExecuteScalar() 是不是null?
fihuang 2009-03-03
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 pztx1992 的回复:]
catch (Exception excpt)
{
Console.WriteLine(excpt);//是asp.net不是控制台,所以应该是reponse.write 你这个console.writeline是?
}
[/Quote]这个是输出异常,和response没关系的!
前面改成response.write以后还是和以前一样的结果!
pztx1992 2009-03-03
  • 打赏
  • 举报
回复
catch (Exception excpt)
{
Console.WriteLine(excpt);//是asp.net不是控制台,所以应该是reponse.write 你这个console.writeline是?
}
fihuang 2009-03-03
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 SealedLove 的回复:]
你把把aspx中的HTML标签都删掉 就留下 第一句 对编程语言的设置以及页面加载类 的那句服务端申明
[/Quote]删掉以后,输出来是空的东西、什么都没有;加上去以后,就把加上去的这部分都输出来了!
SealedLove 2009-03-03
  • 打赏
  • 举报
回复
你把把aspx中的HTML标签都删掉 就留下 第一句 对编程语言的设置以及页面加载类 的那句服务端申明
fihuang 2009-03-03
  • 打赏
  • 举报
回复
[Quote=引用 16 楼 migercai 的回复:]
你在Response.Write(result);
后面加上Response.End();
看看
[/Quote]pageload里的代码好像没有被执行!!
fihuang 2009-03-03
  • 打赏
  • 举报
回复
up 等待高人
fihuang 2009-03-03
  • 打赏
  • 举报
回复
[Quote=引用 16 楼 migercai 的回复:]
你在Response.Write(result);
后面加上Response.End();
看看
[/Quote]还是没用!这个问题好像很妖!
migercai 2009-03-03
  • 打赏
  • 举报
回复
你在Response.Write(result);
后面加上Response.End();
看看
fihuang 2009-03-03
  • 打赏
  • 举报
回复
[Quote=引用 12 楼 lye2000000_super 的回复:]
你还是把你的Ajax的代码也贴出来吧。
[/Quote]

javascript代码来了

// JScript 文件
var xmlHttp;

function getXMLHttpObject()
{
var xmlHttp = null;
try
{
xmlHttp = new XMLHttpRequest();
}
catch (e)
{
try
{
xmlHttp = new ActiveXObject("Msxml2.XMLHTTP");
}
catch (e)
{
xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
}
}
return xmlHttp;
}

function stateChanged()
{
if (xmlHttp.readyState == 4)
{
document.getElementById("show").value = xmlHttp.responseText;
}
}

function doIt(value)
{
if (value.length == 0)
{
return ;
}

xmlHttp = getXMLHttpObject();
if (xmlHttp == null)
return ;

var url = "getValue.aspx";
url = url + "?question_title=" + value;
xmlHttp.onreadystatechange = stateChanged;
xmlHttp.open("GET",url,true);
xmlHttp.send(null);
}

大家再帮忙看看!谢谢了!

111,126

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Creator Browser
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧