【发布时间】:2012-06-07 14:58:57
【问题描述】:
所以我对 .NET 框架还很陌生,但我想做的是执行以下 jQuery 代码:
$(document).on('click', 'a[data-link]', function () {
var $this = $(this);
url = $this.data('link');
$("#imagePreview").load("imageProcess.aspx?"+url);
其中 url 包含类似“model=2k01&type=black&category=variable”的内容。 不幸的是,这不起作用,因为当我在 aspx 文件中执行 Response.Write() 之类的简单操作时,div 标记 imagePreview 没有执行任何操作。但是,删除 ? + url 部分有效,但我无法将任何数据发送到 aspx 文件。我这样做是因为每个链接 a[data-link] 都有不同的数据被发送过来,我需要找到一种动态的方式来实现这一点。任何建议将不胜感激。
更新: 这是我的 html 代码中生成 url 内容的部分:
<a class='modelsBlue' href = '#' data-link='model=" + $(this).find('model').text() + "&type=" + category + "'>" + $(this).find("model").text() + "</a>
并且#image preview 在我的代码中为:
<div id = "imagePreview"></div>
当我尝试运行上面的代码时,我收到以下错误,似乎来自 jQuery.js 文件:
Microsoft JScript runtime error: Syntax error, unrecognized expression: &type=AutoEarly
这里是imageProcess.aspx.cs文件,现在只是输出目录下的所有图片:
namespace ModelMonitoring
{
public partial class imageProcess : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
Response.Write("test");
foreach (var f in Directory.GetFiles(Directory.GetCurrentDirectory()))
{
Response.Write(f);
Response.Write("<br />");
}
}
}
}
第二次更新: 我在 chrome 或 firefox 中运行时没有收到错误,但文件没有被输出。
【问题讨论】:
-
客户端不错。
-
为我工作。也许发布更多你的代码?
-
您在哪个版本的浏览器中测试相同?
-
在使用 html 5 时尝试 ie 9 或 google chrome,而 ie 8 不支持它
-
我认为问题不在服务器端,尝试调试并查看您实际传递给 jquery 加载函数的内容。然后尝试用你的实际字符串替换你的 load("imageProcess.aspx?"+url) 并检查它是否进入服务器
标签: c# jquery asp.net .net load