如果表单位于另一个文件夹中,如何打开表单

时间:2016-12-27 11:09:07

标签: javascript c# asp.net

我写的表单和代码位于不同的文件夹中 代码:

protected string GetClientsHistoryUrl(string iinbin)
{
    return "javascript:window.open('InsurerHistory.aspx?iinbin=" + iinbin.ToString() + "','_blank','status= no, resizable= yes, scrollbars=yes, toolbar=no,location=no,menubar=no ')";
}    

aspx:

<asp:LinkButton ID="HyperLinkIns" runat="server"
  OnClientClick='<%# GetClientsHistoryUrl(Convert.ToString(Eval("iinbin"))) %>'
   Text='<%# Shorten(Eval("InsName"),5,30) %>' ToolTip='<%# Eval("InsName") %>'>
</asp:LinkButton>

错误文字:无法找到资源

5 个答案:

答案 0 :(得分:1)

如果有更简单的解决方案,请不要在Code Behind中使用Javascript。

使用以下代码:

Response.Redirect("~/ForExample/yoururl.aspx?iinbin=" + iinbin.ToString());

然后使用该页面中的QueryString获取值。

<强>更新

不幸的是,规范不能与Response.Redirect一起使用,对于规范你可能想要这样:

Response.Write("<script>window.open('InsurerHistory.aspx?iinbin=" + iinbin.ToString() + "','_blank','status= no, resizable= yes, scrollbars=yes, toolbar=no,location=no,menubar=no'</script>"); 
祝你好运。

答案 1 :(得分:1)

您可以使用辅助函数VirtualPathUtility.ToAbsolute来获取资源的完整路径,而不依赖于您所在的文件夹...

示例:

protected string GetClientsHistoryUrl(string iinbin)
{
    string javaScript = "javascript:window.open('{0}','_blank','status= no, resizable= yes, scrollbars=yes, toolbar=no,location=no,menubar=no')";
    string path = VirtualPathUtility.ToAbsolute("~/Path/to/resource/InsurerHistory.aspx?iinbin=" + iinbin);

    return string.Format(javaScript, path);
}

答案 2 :(得分:0)

你可以在window.open()中给出绝对url,如:

return "javascript:window.open('http://www.example.com/InsurerHistory.aspx?iinbin=" + iinbin.ToString() + "','_blank','status= no, resizable= yes, scrollbars=yes, toolbar=no,location=no,menubar=no ')";

将example.com替换为您的域名。

答案 3 :(得分:0)

试试这个javascript代码

ScriptManager.RegisterStartupScript(Page, Page.GetType(), "popup", "window.open('InsurerHistory.aspx?iinbin=" + iinbin.ToString() + "','_blank')", true);

答案 4 :(得分:0)

原因:ASP.NET运行时无法找到资源,因此请指定资源的相对路径。

例如考虑文件夹结构,

  • About.aspx

  • 帐户/的Login.aspx

Login.aspx页面存在于帐户文件夹中,因此您需要指定相对URL,如下所示。

   <asp:LinkButton ID="HyperLinkIns" runat="server"
        OnClientClick='javascript:window.open("Account/login.aspx")'
        Text="Login" ToolTip="Login">
    </asp:LinkButton>

    <asp:LinkButton ID="LinkButton1" runat="server"
        OnClientClick='javascript:window.open("about.aspx")'
        Text="About" ToolTip="About">
    </asp:LinkButton>