2014-05-13 44 views
1

我已經嘗試尋找一個解決方案,但沒有任何東西似乎爲我工作。我的問題很簡單,雖然(所以,我認爲)。asp按鈕事件內部基金會模式不發射

我正在使用asp webforms的基礎,並有一個揭示模式窗口,當頁面加載時觸發。

代碼:

$(document).ready(function() { $('#myModal').foundation('reveal', 'open') }); 

上述工作正常,但是,任何時候我把一個ASP按鈕模式內(一個我用,btnReset,重定向到一個新的頁面),點擊它會不會觸發附加的事件。

代碼:

<div id="reset"> 
    <div class="large-2 columns"> 
     <asp:Button ID="btnReset" runat="server" Text="Reset" 
        OnClick="btnReset_Click" OnClientClick="btnReset_Click" 
        CssClass="button small radius alert" /> 
    </div> 
</div> 

代碼btnReset:

protected void btnReset_Click(object sender, EventArgs e) 
{ 
    HttpCookie cookie = Request.Cookies["userInfo"]; 
    cookie.Expires = DateTime.Now.AddDays(-1); 
    Response.Cookies.Add(cookie); 
    Response.Redirect("LogIn.aspx"); 
    //Server.Transfer("LogIn.aspx"); 
} 

我敢肯定,我錯過了一些在這裏,但我只是難倒我在做什麼錯。我怎樣才能得到一個ASP按鈕,並讓它在模態內激發它的事件?

+0

加入請求代碼運算。 – krosiris

+0

不,我有的唯一的JavaScript是加載模式,當頁面加載和關閉模式附加到另一個按鈕模式內的功能(這工作正常) – krosiris

+0

完全刪除OnClientClick - 存在同樣的問題。 – krosiris

回答

3

我知道這是一個月前問的,但我遇到了同樣的問題,發現這個問題沒有解決方案。我在基金會論壇上找到了解決方案,並認爲我會在此回答以備將來參考。

這個問題是基礎如何添加你的模態。當你看到你的開發工具時,你會看到模態,當調用時,之外的形式使得asp按鈕無法訪問後面的代碼。

這意味着我們需要將模式添加到窗體中,以便按鈕可以訪問後面的代碼。

我嘗試了幾種不同的方法來實現這個在javascript中使用appendTo,但發現最簡單的方法是make基礎使用根元素的形式。

$(document).foundation('reveal', { rootElement: 'form' }); 

我發現在這裏:Elena Zhdanova solution

+1

謝謝。不過,現在語法略有改變。它應該是'root_element'。 –

+0

爲什麼這不被標記爲答案?我可能錯過了它,因爲我只有在遇到問題時才尋找答案。這對我有效。 –