我正在使用以下客戶端腳本將值傳遞給javascript函數。它在aspx頁面中工作正常,但在ascx頁面中,它不起作用。請幫我解決這個問題。從後面的ascx頁面代碼調用Javascript函數
ScriptManager.RegisterStartupScript(this, this.GetType(), "tabmvng", "<script language='javascript'>SetActiveTab(3); </script>", false);
我正在使用以下客戶端腳本將值傳遞給javascript函數。它在aspx頁面中工作正常,但在ascx頁面中,它不起作用。請幫我解決這個問題。從後面的ascx頁面代碼調用Javascript函數
ScriptManager.RegisterStartupScript(this, this.GetType(), "tabmvng", "<script language='javascript'>SetActiveTab(3); </script>", false);
嘗試以下
<script type='text/javascript'>
function SetActiveTab(a){
alert(a);
}
</script>
ScriptManager.RegisterStartupScript(this, this.GetType(), "tabmvng", "SetActiveTab(3);", true);
Control Caller = this; //user control
string MyScript= "SetActiveTab(3);";
ScriptManager.RegisterStartupScript(Caller, typeof(Caller), "Script Name", MyScript), true);
打通無法新增腳本以從該用戶的控制使用的主叫用戶控件的引用Page對象腳本經理。另外,它會爲你包裝腳本,因此不需要添加腳本標籤。
編輯注:我認爲在你的腳本這個功能存在的地方:SetActiveTab(3);
ScriptManager.RegisterStartupScript(this.Page, typeof(System.Web.UI.Page), "javascript", "YourScript", true);
試試這個,這都是因爲用戶控件,您不再處理一個頁面。
ScriptManager.RegisterClientScriptBlock(this.Page, typeof(UpdatePanel), UniqueID, "myFunction('" + parameter + "');", true);
我有同樣的問題的Javascript不在html輸出。如果你是通過ascx(控件)完成這個操作,則必須將參考傳遞給控件,例如Me。
ScriptManager.RegisterStartupScript(Me, GetType(Page), Guid.NewGuid().ToString(), jscript, True)
之後,所有開始工作!謝謝Mark Schultheiss!
如果你告訴我們什麼不起作用,而不是期待人們猜測它,它會有很大幫助。 – nunespascal