簡體   English   中英

在客戶端按鈕單擊事件中無法使用<%…%>

[英]Unable to use <% … %> in a client side button click event

我正在嘗試根據查詢字符串中的值重定向到其他頁面。 這是一個asp.net Web表單頁面。 單擊取消按鈕后,應執行以下js。 該按鈕是devexpress按鈕。

function OnCancelClick(s, e) {
    if (confirm('If you leave this page, you have to reselect the benefits. Are you sure to leave this page?')) {
        var callingPage = document.getElementById("<%= CallingPage.ClientID %>").value;
        alert("Calling Page: " + callingPage);
        if (callingPage == "AddEmployee.aspx") {
            window.location.href = ResolveUrl('~/Member/Maintenance/AddEmployee.aspx?from=VerifyPage');
        } else if (callingPage == "AddDependentMember.aspx") {

        }
    }

CallingPage是asp隱藏字段的ID。 我在頁面加載期間設置其值。 甚至在加載此頁面之前,我就無法修改控件集合,因為控件包含代碼塊(即<% ... %> )錯誤。 不確定是否是由於devexpress按鈕控件或其他原因引起的。

將CallingPage.ClientID分配給具有公共可訪問性的服務器端頁面變量:

public partial class <class / page name> : System.Web.UI.Page
{
    public string callingPage = "";

    protected void Page_Load(object sender, EventArgs e)
    {
        this.callingPage = CallingPage.ClientID;

        ...
    }
}

然后在您的JavaScript中:

var callingPage = document.getElementById("<%= this.callingPage %>").value;

實際上,這是與devexpress控件相關的獨特問題。 看來我們不能在devexpress按鈕click事件的js客戶端click事件中使用<%%>。 相反,我使用了devexpress的隱藏控件,然后效果很好。 謝謝

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM