2012-05-31 201 views
0

所以我有以下代码:加载动态内容与jQuery和ASP

$(document).on('click', 'a[data-link]', function() { 
     var $this = $(this); 
     url = $this.data('link'); 
     $("#imagePreview").load("imageProcess.aspx?" + url); 
    }); 

这是应该得到的数据发送到imageProcess.aspx,然后追加输出到div id为“imagePreview”。 url存储这里的数据:

<a class='modelsBlue' href = '#' data-link='model="+$(this).find('model').text()+"&type="+category+"'>" + $(this).find("model").text() + "</a> 

我遇到的问题是当我运行这段代码时没有显示任何内容。对于现在我的.aspx文件保存眼前这个:

<% 
    Response.Write(Request.QueryString("model")) 
    Response.Write(Request.QueryString("type")) 
%> 

我很新的ASP.NET从PHP背景的,所以我敢肯定,问题出在asp文件,但我我一直在寻找一个解决方案,我一直没有找到任何东西。任何帮助深表感谢。

回答

1

图像是基于HTTP的流,或者可能使用base64编码嵌入到HTML文档中。你从imageProcess.aspx文件返回什么?您是否在HTTP响应中设置了正确的Content-Type标题(例如image/pngimage/jpg)?

更新:我建议您首先确定问题出在哪里。安装Fiddler并运行你的代码。通过Fiddler查看HTTP流量。这样,您可以看到服务器已返回的内容(您可以看到HTTP响应正文)。如果没有发回,那么问题出在服务器上。如果有东西被发回,但没有显示,那么当然你必须检查客户端。

+0

现在我只想让原始页面显示从.asp文件返回的原始文本,以便我知道它正在工作。我在那里的东西实际上就是在asp文件中的所有内容,并且通过GET参数发送的内容只是两个字符串。 –

1

我会推荐使用一个程序,它会告诉你在你的ajax调用中发送和接收到的是什么。我个人使用http://www.fiddler2.com/fiddler2/

如果您不想使用新程序,我会在asp文件中添加一些额外的代码来验证您是否获得了预期的查询字符串。即改变他们是

Response.Write("model:" & Request.QueryString("model"))

然后添加一个回调函数到$(“#imagePreview”)。负载看看你会得到什么作为响应。