您好,登錄后才能下訂單哦!
關于asp.net前臺js調用后臺方法的問題
最近在壇子里解答壇友的問題,發現有好幾個問題,都是js調用C#后臺方法的問題。這里也總結一下,給后來人參考參考。
前臺:
function QianTai() { var JSGetTime = "那個啥地區時間:"; var JSstr = '<%=GetNowTime("'+JSGetTime+'")%>'; alert(JSstr); }
后臺:
public string GetNowTime(string str) { string aspGetTime = DateTime.Now.ToString(); return str+" "+aspGetTime; }
像上面這樣是可以正確彈出時間的。
但是像下面這個就不可行。
前臺:
function aaa(){ for (var i=0;i<10;i++){ text+=pic[i]+"ddddddd"; } //我想把text傳到后臺解析,通過split分割返回第一值 var asdf = '<%=ss("' + text + '")%>'; alert(asdf); }
后臺:
public string ss(string picURLs){ string pic; string[] pics = Regex.Split(picURLs,"ddddddd"); pic=pics[0]; return pic; }
解決方案是:要么在前臺split,要么用ajax來調后臺。這里后臺用到了regex正則替換。但是這里不起作用,因為傳到后臺的picURLs不是1111ddddddd這樣的字符串,而是"'+text+'"。即后臺方法優先執行,還沒等到js賦值,已經傳過去了,所以這里的正則替換不起作用。可以單步調試一下,看一下執行的順序。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。