6

我有这个小问题...我有这个 asp.net 网站。我有一个菜单,全部用 html 和 css 完成。因此,当我单击主页时,ajax 会将其他内容加载到指定的 div 元素中。工作 100%。

在加载到 div 元素中的内容中,我有一个按钮。一个 ASP.NET 按钮。

当我单击该按钮时,它给了我一个“找不到资源”。错误。

一定有什么我错过了。如果你不明白,继承人的ajax:

//Load the Home page on click.
$(document).ready(function () {
    $('.home').click(function () {
        $("#content").load("html/home/home.aspx");
    });
});

现在加载到内容 div 中的 aspx 页面显示一个按钮 btnAdd:

<asp:Panel ID="pnlAddNewBlog" runat="server">
    <asp:TextBox ID="txtAddNewBlog" runat="server" TextMode="MultiLine"></asp:TextBox>
    <br />
    <asp:Button ID="btnAdd" runat="server" Text="Add" />
</asp:Panel>

当我单击该按钮时,会出现错误。

我想要实现的是:当用户单击按钮时,txtAddNewBlog 中的文本被添加到数据库中。现在我可以使用 C# 来实现......但如果这个错误是我的方式。有任何想法吗?

4

1 回答 1

1

问题将是form被创造出来的。当您发出该请求时,ASP.NET 将构建一个表单,其目标是home.aspx,而不是它的完整路径。但是您将该表单转储到处于不同级别的 HTML 页面上。

当您进行表单发布时,它会尝试发布到home.aspx,相对于浏览器认为的位置,这是两个级别,但它没有找到它。

我不知道是否有这样做的好方法 - ASP.NET 并不意味着处理这种事情。你可以做一个 IFRAME。您可以将内容包装home.aspx到用户控件中,并将 ASP.NET 表单留在外部页面上。或者您可以操纵表单的目标,以便发布到正确的位置。但我不认为其中任何一个会很有趣。

于 2013-04-18T18:46:26.190 回答