2015-09-16 28 views
0

我有一個加載到我的頁面的腳本。在這個腳本中,當它完成它必須做的事情時,它會更改多視圖活動索引屬性。換句話說,腳本結束時,多視圖顯示不同的視圖。jquery在ASP中運行

我一直在尋找,到目前爲止,它看起來像我將不得不實施AJAX,我的問題是,有沒有一種簡單的方法來做到這一點,沒有AJAX?有沒有辦法告訴我的jquery在我的page.cs.aspx中執行一個函數(而不是webmethod)?

+0

你的問題是關於asp或aspx頁面? – Yogesh

+0

Ajax是解決這類問題的簡單方法。而不是試圖避免它,通常需要更多的工作,*嘗試使用它*。這不是很難使用:) –

回答

1

有沒有簡單的方法來做到這一點,沒有AJAX?有沒有的 告訴我的jQuery來在我 page.cs.aspx

好執行功能(不是一個WebMethod),排序的方式。你在客戶端。

所以 - 「沒有Ajax /無Webmethod」 - 這將讓你與選項分別是:WebSocketsserver sent eventsChanged Iframe source

請注意,您需要服務器端的支持軟件才能執行此操作。而且這個SSE是not supported in all browsers

+0

快速和殘酷...... ='( –

+0

多數民衆贊成!謝謝你的知識! –

+0

jQuery在客戶端上運行。爲了執行服務器端操作,你需要提出請求到服務器,因此AJAX。 – HaukurHaf

0

沒有ajax或更復雜的東西,比如套接字,沒有辦法調用服務器端函數 - 就像@ royi-namir所說的那樣。

如果您希望避免使用ajax等,可能的解決方案: 如果您的MultiView中沒有很多服務器端功能(只是文本/控件渲染或不受腳本影響的東西),那麼您可以擺脫MultiView,只需加載最初需要的東西,並將其隱藏起來。然後在你的腳本結尾添加一個js調用來顯示你的視圖的內容(現在可能只是一個div或者其他東西)。

或 使用UpdatePanel,讓它爲你做ajax並渲染再次使用正確的多視圖視圖的頁面部分。 a way to use multiview with update panel我不喜歡這些類型的ajax,因爲如果你不熟悉它們,它們會引入比解決問題更多的問題。在這裏,您只需讓腳本執行某些操作即可觸發更新面板進行更新。您可以向服務器顯式註冊某些內容到腳本管理器,或者執行一些簡單的操作,然後單擊更新面板中的一個按鈕,該按鈕會導致回發,或者沿着這些行。