類型不同啊大哥,a是js的數(shù)組,后面應(yīng)該是一個(gè)數(shù)組對(duì)吧,應(yīng)該是"1,2,",str是C#的string[],你知道%=Test() %的是什么嗎,不管他,你自己測(cè)試,只要改一下就行了,

創(chuàng)新互聯(lián)是一家專注網(wǎng)站建設(shè)、網(wǎng)絡(luò)營(yíng)銷(xiāo)策劃、微信小程序、電子商務(wù)建設(shè)、網(wǎng)絡(luò)推廣、移動(dòng)互聯(lián)開(kāi)發(fā)、研究、服務(wù)為一體的技術(shù)型公司。公司成立十載以來(lái),已經(jīng)為上千效果圖設(shè)計(jì)各業(yè)的企業(yè)公司提供互聯(lián)網(wǎng)服務(wù)。現(xiàn)在,服務(wù)的上千客戶與我們一路同行,見(jiàn)證我們的成長(zhǎng);未來(lái),我們一起分享成功的喜悅。
public string Test()
{
return "1,2";
}
OK,你改一下再試試吧。
______________________________________________________________________
問(wèn)題補(bǔ)充:我的問(wèn)題其實(shí)不完全,其實(shí)我建數(shù)組是為了保存數(shù)據(jù)庫(kù)中的數(shù)據(jù)。傳到前臺(tái)動(dòng)態(tài)顯示!
public string[] Test()
{
Person.DA.PersonDa pda = new Person.DA.PersonDa();
Person.Model.Person person = new Person.Model.Person();
DataTable dt = pda.GetTableLink();//
int n = dt.Rows.Count;//表的行數(shù)
string[] strLink = new string[n];
for (int i = 0; i n; i++)
{
strLink[i] = dt.Rows[i][0].ToString();
}
return strLink;
}
在前臺(tái)怎么接收呢?高手指點(diǎn)下!
其實(shí)呢,你最后寫(xiě)到頁(yè)面上的,其實(shí)應(yīng)該是代碼的形式,也就是說(shuō),直接輸出字符串就行了,所以呀,這個(gè)方法應(yīng)該這樣改就對(duì)了
public string Test()
{
Person.DA.PersonDa pda = new Person.DA.PersonDa();
Person.Model.Person person = new Person.Model.Person();
DataTable dt = pda.GetTableLink();//
int n = dt.Rows.Count;//表的行數(shù)
string strLink = string.Empty;
for (int i = 0; i n; i++)
{
strLink =strLink +","+ dt.Rows[i][0].ToString();
}
return strLink.Substring(0,strLink.Length-1);
}
這樣,直接輸出一個(gè)字符串,js就能讀到了。
____________________________________________________________________
public string Test()
{
Person.DA.PersonDa pda = new Person.DA.PersonDa();
Person.Model.Person person = new Person.Model.Person();
DataTable dt = pda.GetTableLink();//
int n = dt.Rows.Count;//表的行數(shù)
string strLink = string.Empty;
for (int i = 0; i n; i++)
{
strLink =strLink +","+ dt.Rows[i][0].ToString();
}
return strLink.Substring(0,strLink.Length-1);
}
后臺(tái)按照你提供的方法,我在前臺(tái)var a="%=Test() %";
document.write(a);能輸出字符串。但是,我想輸出字符串里第一個(gè)字符串。比如說(shuō)strLink=[首頁(yè),連接,更新信息,刪除信息],我想在前臺(tái)輸出第3項(xiàng)(更新信息),或則說(shuō)循環(huán)輸出字符串里信息。如果后臺(tái)是個(gè)二維數(shù)組呢,想在前臺(tái)循環(huán)輸出,那又該怎樣做呢?謝謝啦!!!哎,AJAX我不會(huì)!
這個(gè)很簡(jiǎn)單啊,js的二維數(shù)組是怎么定義的,你就輸出什么樣的嗎,記住,輸出的就是符合js的數(shù)據(jù)類型的變量值,比如a值需要是"{{0,1},{1,2}}"這個(gè)樣子的,你就把后臺(tái)的二維數(shù)組拼成這種格式的,那么數(shù)據(jù)不就有了嗎,至于輸出,那你就看一下js的for循環(huán),寫(xiě)完循環(huán)輸出,問(wèn)題不就解決了們嗎。
1:你的程序原則性錯(cuò)誤,后臺(tái)的東西不要使用JS,尤其是數(shù)據(jù)庫(kù)連接的管理,使用JAVA,PHP,RUBY都好。
2:JS調(diào)用后臺(tái),可以使用AJAX,推薦DWR框架,簡(jiǎn)單易學(xué)。
如果利用ajax來(lái)處理可能會(huì)好些。目前只能通過(guò)在后臺(tái)對(duì)這些控件綁定前臺(tái)的javascript函數(shù)來(lái)支持前臺(tái)的處理函數(shù)。在網(wǎng)上找了找,發(fā)現(xiàn)了幾種方法可以達(dá)到要求: 第一種,感覺(jué)用起來(lái)最方便 Button1.Attributes.Add("onclick", "return OnBtnClick()"); OnBtnClick() 是一個(gè)前臺(tái)方法,在此方法中直接在前臺(tái)處理數(shù)據(jù)。可以替換成一般的腳本 第二種,OnClientClick asp:Button ID="Button1" runat="server" Text="Button" OnClientClick="OnClientClick()" OnClick="Button1_Click" / Button1_Click是在cs中(后臺(tái))處理的方法,而OnClientClick() 就是javascript(前臺(tái))的處理函數(shù)。 第三種 用ClientScript類動(dòng)態(tài)添加腳本 用法如下:在想調(diào)用某個(gè)javascript腳本函數(shù)的地方添加代碼,注意要保證MyFun已經(jīng)在腳本文件中定義過(guò)了。 ClientScript.RegisterStartupScript(ClientScript.GetType(), "myscript", "scriptMyFun();/script"); 這個(gè)方法比Response.Write更方便一些,可以直接調(diào)用腳本文件中的自定義函數(shù)。 第四種,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方法寫(xiě)入腳本 比如在你單擊按鈕后,先操作數(shù)據(jù)庫(kù),完了后顯示已經(jīng)完成,可以在最后想調(diào)用的地方寫(xiě)上
Ajax正是為了解決此類問(wèn)題。
AJAX = 異步 JavaScript 和 XML。
AJAX 是一種用于創(chuàng)建快速動(dòng)態(tài)網(wǎng)頁(yè)的技術(shù)。
通過(guò)在后臺(tái)與服務(wù)器進(jìn)行少量數(shù)據(jù)交換,AJAX 可以使網(wǎng)頁(yè)實(shí)現(xiàn)異步更新。這意味著可以在不重新加載整個(gè)網(wǎng)頁(yè)的情況下,對(duì)網(wǎng)頁(yè)的某部分進(jìn)行更新。
這樣也就可以通過(guò)發(fā)送異步請(qǐng)求來(lái)調(diào)用后臺(tái)方法。
請(qǐng)參考:
asp:Button ID="Button1" runat="server" Text="Button" OnClientClick="return check();" OnClick= "Button1_Click"/
check函數(shù)大概如下:
function check()
{
if(某個(gè)文本框內(nèi)為空)
{
alert("請(qǐng)輸入用戶名");
return false;//一定要return
}
else if(...)
...
return true;//最后一定要return true
}
關(guān)于onclientclick和onclick:在.net 1.1中,沒(méi)有onclientclick屬性。當(dāng)時(shí)的寫(xiě)法是onclick="return check();Button1_Click",那么這樣不論check()返回值是true還是false都不會(huì)再提交服務(wù)器執(zhí)行Button1_Click了(因?yàn)槎紃eturn了,不會(huì)執(zhí)行后面的代碼了),這樣對(duì)編碼者來(lái)說(shuō)增加了一些麻煩。所以在.net 2.0中Button控件增加了OnClientClick屬性,在客戶端需要加的javascript代碼可以寫(xiě)在OnClientClick中,如OnClientClick="return check();"而服務(wù)器端事件Onclick="Button1_Click",代碼邏輯清晰了,也無(wú)需去顧及return造成不能提交了。
可以向后臺(tái)傳參數(shù)加一個(gè)參數(shù),如:type,type=1為保存按鈕,type=2為提交按鈕。
文章標(biāo)題:前臺(tái)javascript,前臺(tái)接待的工作內(nèi)容和要求
網(wǎng)頁(yè)路徑:http://chinadenli.net/article2/dsescic.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供域名注冊(cè)、網(wǎng)站維護(hù)、網(wǎng)站建設(shè)、網(wǎng)頁(yè)設(shè)計(jì)公司、網(wǎng)站策劃、手機(jī)網(wǎng)站建設(shè)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容
營(yíng)銷(xiāo)型網(wǎng)站建設(shè)知識(shí)