本文目錄一覽:
ASP.NET後台中調用前台Javascript函數的幾種方法
如果利用ajax來處理可能會好些。目前只能通過在後台對這些控制項綁定前台的javascript函數來支持前台的處理函數。在網上找了找,發現了幾種方法可以達到要求:第一種,感覺用起來最方便Button1.Attributes.Add(“onclick”, “return OnBtnClick()”);OnBtnClick() 是一個前台方法,在此方法中直接在前台處理數據。可以替換成一般的腳本第二種,OnClientClickasp:Button ID=”Button1″ runat=”server” Text=”Button” OnClientClick=”OnClientClick()” OnClick=”Button1_Click” /Button1_Click是在cs中(後台)處理的方法,而OnClientClick() 就是javascript(前台)的處理函數。第三種 用ClientScript類動態添加腳本用法如下:在想調用某個javascript腳本函數的地方添加代碼,注意要保證MyFun已經在腳本文件中定義過了。ClientScript.RegisterStartupScript(ClientScript.GetType(), “myscript”, “scriptMyFun();/script”);這個方法比Response.Write更方便一些,可以直接調用腳本文件中的自定義函數。第四種,ClientScript.RegisterStartupScript例子:StringBuilder sb = new StringBuilder();sb.Append(“script language=’javascript'”);sb.Append(“Button2_onclick(‘” + serverPath + “‘)”);sb.Append(“/script”);ClientScript.RegisterStartupScript(this.GetType(), “LoadPicScript”, sb.ToString());第五種. 用Response.Write方法寫入腳本比如在你單擊按鈕後,先操作資料庫,完了後顯示已經完成,可以在最後想調用的地方寫上
ASP.net C# 後台調用JS函數
在伺服器端的後台代碼Button_Click事件中調用一個JS寫的方法
protected void btnShow_Click(object sender, EventArgs e)
{
//這是Button處理事件的第一句 調用客端的js函數
Page.RegisterStartupScript(“showDiv”, “scriptShowDiv()/script”);//但是VS會提示這種方法已經過時了,但是還是可以使用的!如果比較介意可以使用以下幾種替代
第一種:Page.RegisterClientScriptBlock(“showDiv”, “scriptShowDiv()/script”);
第二種:ScriptManager.RegisterClientScriptBlock(“這個比較麻煩,所以雖然比較新 我還是比較喜歡使用過時的 新的總是兼容後面 所以不用擔心過時的問題”);
第三種:ScriptManager.RegisterStartupScript(“這個比較麻煩,所以雖然比較新 我還是比較喜歡使用過時的 新的總是兼容後面 所以不用擔心過時的問題”);
還有很多方法 選中上面的關任意鍵字 F1自己看VS幫助吧。。。。。。
//——-下面繼續寫你客戶端要做的處理操作
}
asp調用js
首先不是ASP調用,如果是ASP調應該說是使用JS代碼寫伺服器,而不再使用VB/VBS了。在伺服器使用JS是這樣的:
script type=”text/javascript” runat=”server”
/script
這裡中的代碼是用JS寫的。
而JS如果在在外邊的話:
script type=”text/javascript” src=”../XX.js” runat=”server”/script這是服務端使用JS。
你可能注意到我只是說使用而不說調用,其實這是伺服器兩種代碼的混寫。如果你在開頭中有一個指令句的話:
%@ Language=”javascript” codepage=”936″%
則在 〈%%〉內的內容全部是使用了javascript的寫法。可以混寫,但沒有必要吧?一種語言難道不能完成你的請求?
而script type=”text/javascript” src=”../X.js”/javascript只是客戶端的調用!也就是說該內容會發送到客戶端的,然後會自動下載JS文件到本地,在本地的瀏覽器中執行!
而就算是你採用了兩種語言混寫的ASP代碼,很不幸地告訴你,兩種語言是不能直接通信的!也就是想在VB中調JS的變數或是函數都是錯誤的。這就是為什麼稱ASP不能調用JS。
JS是瀏覽器的腳本語言,可別忘記另外一個重要內容。VBSCRIPT也可以是瀏覽器的腳本語言的。而在服務端也是同樣。所以別在想ASP調用JS了!
如果是客戶端的調用,請檢查路徑是否正確,是否存在該函數以供調用。如果你的JS中沒有這個函數,顯然也是調用不成功能的。檢查瀏覽器是否禁用了JS腳本。
當一切檢查完成,可能還會犯這樣的毛病:
JS文件和格式如果這樣寫就不會有任何調用的(事實上文件已經調入,便不能調用函數而已)
XX.js
script language=”javascript”
fuction nan(){
}
這裡定義了一大堆的函數
/script
這種寫法本身就是錯誤的,但有很多有就這樣寫。實際上格式是裡邊全部是JS語句,不存在任何其他內容的!
asp.net 後台調用JS
這樣做,不太現實。
首先,您的按鈕是控制項來的,隨非您將DIv也加入runat=”server”
,把DIV顯示出來,不過,這種方式,一般都不行,因為,當你把DIV顯示出來了,那button按鈕就會刷新頁面一次,DIV也不會顯示出來了。
您可以對button按鈕加入OnClientClick事件,寫JS顯示出來。
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/204651.html