将 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 中运行错误,但文件没有输出。

将 jQuery .load() 与 aspx 一起使用

原来这是一个空格问题。我不得不添加一个包装器:

$(this).find('model').text()

阅读:

$.trim($(this).find('model').text())

因为我正在读取的 XML 文件在模型名称周围有空格。 感谢任何回复的人!