當(dāng)前位置:首頁 > 芯聞號 > 充電吧
[導(dǎo)讀]事件驅(qū)動的Web之旅——JSP與JavaScript的融合 (此文獻(xiàn)給所有使用Delphi的程序員) 說正題之前,我先寫個序吧! 我深愛著Delphi,不能自拔??墒俏乙部吹搅薆/S是以后程序設(shè)計的大

事件驅(qū)動的Web之旅——JSP與JavaScript的融合

(此文獻(xiàn)給所有使用Delphi的程序員)

說正題之前,我先寫個序吧!

我深愛著Delphi,不能自拔??墒俏乙部吹搅薆/S是以后程序設(shè)計的大方向,多年更隨Delphi,使我在這個時候選擇Java/JSP(你知道嗎?第一個嘗試跨平臺開發(fā)的語言是Pascal)。說句實話,在Windows的桌面開發(fā)領(lǐng)域Delphi當(dāng)之無愧為老大。他是那么的快捷和方便,在學(xué)習(xí)Web的時候,我也帶進(jìn)了Delphi的思想,為什么Web不可以像Windows Application那樣方面呢?基于事件驅(qū)動的,狀態(tài)自動保持的(這其實是Windows的思想)。然而,學(xué)了Web開發(fā)才知道,當(dāng)你要做一些讓服務(wù)器知道得頁面變動時,你就必須提交,提交可以改變頁面的狀態(tài)。當(dāng)然,這也增加了保持頁面狀態(tài)的復(fù)雜性。不過不要緊,我們慢慢來。

?

JSP與JavaScript的融合

說句極端的話,對于用戶來說,JSP和JavaScript的效果是一樣的?也許現(xiàn)在就開始有人扔雞蛋了。不過你想想,怎樣才能開發(fā)出理想的適合于用戶使用的Application呢?這當(dāng)然是站在用戶的角度。如果站在程序員的角度,我剛才的話會招來很多人嘲笑,但是對于用戶來說,他們不管你有多少代碼,不管你有什么樣的數(shù)據(jù)庫支持,不管你用的是起泡排序還是快速排序,他們關(guān)心的只是面子上的問題。本文也不是討論美工設(shè)計的。我這時要讓JSP和JavaScript達(dá)到相同的效果,不過這是對于用戶來說的。

也曾在CSDN的論壇上看到JSP的變量能不能被JavaScript調(diào)用,JavaScript可不可以控制JSP的問題,答案通常是兩種:第一種便是直截了當(dāng)?shù)幕卮稹安荒?,這根本是兩碼事”、第二種無非是比較誠懇“這一個是服務(wù)端、一個是客戶端,怎么可能,看看書吧”。其實,殊不知,這是一個非常值得探討的問題。

不過先別扯遠(yuǎn)了,我們先看看在用戶的角度,JSP和JavaScript相同的效果。

?

程序一:一個方向控制程序,瀏覽器里有五個按鈕,上下左右中。點擊上面的按鈕中間的按鈕向上移動,點擊下面的按鈕中間的按鈕向下移動……以此類推,點擊中間的按鈕恢復(fù)初始狀態(tài)。

先來看一看JSP代碼:

FiveButtons.jsp

<%@ page contentType="text/html; charset=utf-8" language="java" %> <%@ page import="java.sql.*"%>

<%

??? int iLeft;

??? int iTop;

??? if (request.getParameter("hidL") != null) {

??????? iLeft = Integer.parseInt(request.getParameter("hidL"));

??????? iTop? = Integer.parseInt(request.getParameter("hidT"));

??????? if (request.getParameter("btnU") != null

?&& request.getParameter("btnU").compareTo("U") == 0)

iTop? -= 10;

??????? if (request.getParameter("btnD") != null

&& request.getParameter("btnD").compareTo("D") == 0)

iTop? += 10;

??????? if (request.getParameter("btnL") != null

&& request.getParameter("btnL").compareTo("L") == 0)

iLeft -= 10;

??????? if (request.getParameter("btnR") != null

&& request.getParameter("btnR").compareTo("R") == 0)

iLeft += 10;

??????? if (request.getParameter("btnM") != null

&& request.getParameter("btnM").compareTo("M") == 0) {

??????????? ????iLeft = 400;

??????????????? iTop? = 200;

??????? }

??? } else {

??????? iLeft = 400;

??????? iTop? = 200;

??? }

%>

?

?

再來看一下JavaScript代碼:FiveButtons.htm

FiveButtons

?

STYLE="position:absolute; top:100; left:400"

onClick="btnClick(this.value)">

STYLE="position:absolute; top:300; left:400"

onClick="btnClick(this.value)">

STYLE="position:absolute; top:200; left:300"

onClick="btnClick(this.value)">

STYLE="position:absolute; top:200; left:500"

onClick="btnClick(this.value)">

STYLE="position:absolute; top:200; left:400"

onClick="btnClick(this.value)">

?

大家看一看效果對于用戶來說是不是一樣?(不能發(fā)太長,分次來,待續(xù))

?

本站聲明: 本文章由作者或相關(guān)機構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內(nèi)容真實性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或?qū)⒋呱龈蟮莫毥谦F公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

加利福尼亞州圣克拉拉縣2024年8月30日 /美通社/ -- 數(shù)字化轉(zhuǎn)型技術(shù)解決方案公司Trianz今天宣布,該公司與Amazon Web Services (AWS)簽訂了...

關(guān)鍵字: AWS AN BSP 數(shù)字化

倫敦2024年8月29日 /美通社/ -- 英國汽車技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認(rèn)證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開發(fā)耗時1.5...

關(guān)鍵字: 汽車 人工智能 智能驅(qū)動 BSP

北京2024年8月28日 /美通社/ -- 越來越多用戶希望企業(yè)業(yè)務(wù)能7×24不間斷運行,同時企業(yè)卻面臨越來越多業(yè)務(wù)中斷的風(fēng)險,如企業(yè)系統(tǒng)復(fù)雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報道,騰訊和網(wǎng)易近期正在縮減他們對日本游戲市場的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會開幕式在貴陽舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導(dǎo)體

8月28日消息,在2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機 衛(wèi)星通信

要點: 有效應(yīng)對環(huán)境變化,經(jīng)營業(yè)績穩(wěn)中有升 落實提質(zhì)增效舉措,毛利潤率延續(xù)升勢 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競爭力 堅持高質(zhì)量發(fā)展策略,塑強核心競爭優(yōu)勢...

關(guān)鍵字: 通信 BSP 電信運營商 數(shù)字經(jīng)濟

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺與中國電影電視技術(shù)學(xué)會聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會上宣布正式成立。 活動現(xiàn)場 NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會上,軟通動力信息技術(shù)(集團)股份有限公司(以下簡稱"軟通動力")與長三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉