将 jQuery .load() 与 aspx 一起使用
本文关键字:aspx 一起 jQuery load | 更新日期: 2023-09-27 18:36:26
所以我对.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 预览在我的代码中为:
<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 中运行错误,但文件没有输出。
原来这是一个空格问题。我不得不添加一个包装器:
$(this).find('model').text()
阅读:
$.trim($(this).find('model').text())
因为我正在读取的 XML 文件在模型名称周围有空格。 感谢任何回复的人!