專利名稱:獲取信息的方法和裝置的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及智能交通領(lǐng)域,尤其涉及一種獲取信息的方法和裝置。
背景技術(shù):
目前,通過互聯(lián)網(wǎng)發(fā)布交通信息是交通信息服務(wù)最方便的形式。交通信息服務(wù)系統(tǒng)能夠通過輸入的關(guān)鍵詞,快速查找出關(guān)鍵詞對(duì)應(yīng)的相關(guān)信息,從而智能地指導(dǎo)用戶的出 行。在實(shí)現(xiàn)本發(fā)明的過程中,發(fā)明人發(fā)現(xiàn),在目前的交通信息服務(wù)系統(tǒng)中,用戶必須輸 入一個(gè)完整的關(guān)鍵詞,才能使系統(tǒng)根據(jù)這個(gè)關(guān)鍵詞獲取對(duì)應(yīng)的信息,從而使得用戶的輸入 操作繁瑣。
發(fā)明內(nèi)容
本發(fā)明的實(shí)施例提供一種獲取信息的方法和裝置,能夠簡化用戶的輸入。為達(dá)到上述目的,本發(fā)明的實(shí)施例采用如下技術(shù)方案一種獲取信息的方法,包括獲取用戶輸入信息;向服務(wù)器發(fā)送所述用戶輸入信息;接收服務(wù)器返回的信息集合,所述信息集合為預(yù)先設(shè)置的與所述用戶輸入信息相 關(guān)的信息集合;從所述信息集合中選取用戶指定的信息。一種獲取信息的裝置,包括第一獲取單元,用于獲取用戶輸入信息;發(fā)送單元,用于向服務(wù)器發(fā)送由所述第一獲取單元獲取的用戶輸入信息;接收單元,用于接收服務(wù)器返回的信息集合,所述信息集合為預(yù)先設(shè)置的與所述 用戶輸入信息相關(guān)的信息集合;選取單元,用于從由所述接收單元接收的信息集合中選取用戶指定的信息。本發(fā)明實(shí)施例提供的獲取信息的方法和裝置,由于是根據(jù)用戶輸入的信息從服務(wù) 器端獲取與所述用戶輸入信息相關(guān)的信息集合,從所述信息集合中選取用戶所需要的信 息,使用戶在僅輸入一部分字母或漢字的情況下,獲取與該字母或漢字相關(guān)的所有關(guān)鍵詞, 供用戶進(jìn)行選擇。解決了現(xiàn)有技術(shù)中,用戶必須輸入一個(gè)完整的關(guān)鍵詞,才能獲取對(duì)應(yīng)路線 的問題。本發(fā)明的實(shí)施例提供的獲取信息的方法和裝置,能夠簡化用戶的輸入。
為了更清楚地說明本發(fā)明實(shí)施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對(duì)實(shí)施例或現(xiàn) 有技術(shù)描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖是本發(fā)明 的一些實(shí)施例,對(duì)于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動(dòng)的前提下,還可以根據(jù)這些附圖獲得其他的附圖。圖1為本發(fā)明實(shí)施例提供的獲取信息的方法流程圖;圖2為本發(fā)明另一實(shí)施例提供的獲取信息的方法流程圖;圖3為本發(fā)明實(shí)施例提供的獲取信息的裝置結(jié)構(gòu)示意圖一;圖4為本發(fā)明實(shí)施例提供的獲取信息的裝置結(jié)構(gòu)示意圖二。
具體實(shí)施例方式為使本發(fā)明實(shí)施例的目的、技術(shù)方案和優(yōu)點(diǎn)更加清楚,下面將結(jié)合本發(fā)明實(shí)施例中的附圖,對(duì)本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例是 本發(fā)明一部分實(shí)施例,而不是全部的實(shí)施例?;诒景l(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員 在沒有付出創(chuàng)造性勞動(dòng)前提下所獲得的所有其他實(shí)施例,都屬于本發(fā)明保護(hù)的范圍。為了解決現(xiàn)有的交通信息服務(wù)系統(tǒng)中,由于用戶必須輸入一個(gè)完整的關(guān)鍵詞,才 能獲取對(duì)應(yīng)的路線,從而使用戶的輸入操作繁瑣的問題,本發(fā)明實(shí)施例提供一種獲取信息 的方法和裝置。如圖1所示,本發(fā)明實(shí)施例提供的獲取信息的方法,包括步驟101,獲取用戶輸入信息;步驟102,向服務(wù)器發(fā)送所述用戶輸入信息;步驟103,接收服務(wù)器返回的信息集合,所述信息集合為預(yù)先設(shè)置的與所述用戶輸入信息相關(guān)的信息集合;步驟104,從所述信息集合中選取用戶指定的信息。本發(fā)明實(shí)施例提供的獲取信息的方法,由于是根據(jù)用戶輸入的信息從服務(wù)器端獲取與所述用戶輸入信息相關(guān)的信息集合,從所述信息集合中選取用戶所需要的信息,使用 戶在僅輸入一部分字母或漢字的情況下,獲取與該字母或漢字相關(guān)的所有關(guān)鍵詞,供用戶 進(jìn)行選擇。解決了現(xiàn)有技術(shù)中,用戶必須輸入一個(gè)完整的關(guān)鍵詞,才能獲取對(duì)應(yīng)路線的問 題。如圖2所示,本發(fā)明另一實(shí)施例提供的獲取信息的方法,包括步驟201,獲取用戶輸入信息;在本實(shí)施例中,首先用超文本標(biāo)記語言(Hyper Text Mark-up Language,HTML)編 寫一個(gè)文本輸入框,用戶在所述文本輸入框中輸入信息。所述輸入信息可以是一個(gè)或幾個(gè) 漢字,也可以是一個(gè)或幾個(gè)字母。用HTML語言得到一個(gè)文本輸入框的代碼為<inpUt id ="txt" type = " text" />。其次,用一個(gè)函數(shù)來獲取用戶輸入的漢字或者字母信息。具 體獲取的方法是在上述文本輸入框的HTML標(biāo)簽上加入鍵盤監(jiān)聽事件,在程序中用onkeyup 標(biāo)記。表示當(dāng)用戶的鍵盤按鈕抬起時(shí),觸發(fā)一個(gè)預(yù)先設(shè)定的函數(shù),將用戶通過敲擊鍵盤所輸 入的漢字或字母信息作為所述函數(shù)的參數(shù)傳入。所述函數(shù)是一個(gè)自定義函數(shù)searchO,它 通過調(diào)用網(wǎng)頁開發(fā)技術(shù)Ajax的異步請(qǐng)求函數(shù)XmlHttpRequest對(duì)象中的openO函數(shù)來設(shè) 置信息傳送屬性,并且通過調(diào)用XmlHttpRequest對(duì)象中的sendO函數(shù)向服務(wù)器發(fā)送請(qǐng)求。 其中,所述openO函數(shù)中的參數(shù)包括需要發(fā)送請(qǐng)求的服務(wù)器地址、采用的請(qǐng)求方式等。本 實(shí)施例中,采用異步請(qǐng)求方式發(fā)送數(shù)據(jù)。需要說明的是,有一部分鍵盤按鍵是不被作為參數(shù)傳入到所述函數(shù)open 0中的。例如,當(dāng)用戶按下回車鍵,或者取消鍵ESC,或者向上鍵,或者向下鍵等按鍵時(shí),會(huì)被自動(dòng)地過濾掉而不傳入函數(shù)中。具體過濾這些按鍵的方法也是加入鍵盤監(jiān)聽事件,在程序中用 onkeydown標(biāo)記,用來檢測(cè)用戶按下的按鍵類型。所述按鍵類型可以用預(yù)先設(shè)定的鍵碼來 表示,例如,回車鍵在程序中的鍵碼為13,取消鍵的鍵碼是27,向上鍵的鍵碼是38,向下鍵 的鍵碼是40。即當(dāng)檢測(cè)到上述鍵碼時(shí),不傳入?yún)?shù)。上述鍵盤監(jiān)聽事件的具體實(shí)現(xiàn)代碼如 下〈input id=〃 txt〃 type=" text" onkeyup =" search (event)"onkeydown = " catchKeyBoard(event)" />步驟202,向服務(wù)器發(fā)送所述用戶輸入信息;在本實(shí)施例中,采用Ajax技術(shù)的異步性向服務(wù)器發(fā)送所獲取到的用戶輸入信 息。由于Ajax技術(shù)的異步性可以實(shí)現(xiàn)當(dāng)前頁面無刷新地與所述服務(wù)器交互數(shù)據(jù),使得用 戶體驗(yàn)更好。在本實(shí)施例中,通過Ajax技術(shù)中的XmlHttpRequest對(duì)象來發(fā)送所述用戶 輸入信息。具體方法為首先進(jìn)行初始化,引入網(wǎng)頁腳本語言JavaScript代碼;其次,聲 明XmlHttpRequest對(duì)象,不同的瀏覽器所采用的聲明方法不同,例如,IE瀏覽器使用代 碼 var xmlHttpReq = newActiveXOb ject ( "Msxmll2. XMLHTTP,,)來獲取 XmlHttpRequest 對(duì)象;FireFox 瀏覽器使用代碼 var xmlHttpReq = new XMLHttpRequest 0 來獲取 XmlHttpRequest對(duì)象。獲取XmlHttpRequest對(duì)象后,調(diào)用所述XmlHttpRequest對(duì)象中的 openO函數(shù),將在步驟201中所獲取的用戶輸入信息發(fā)送給服務(wù)器,其中,所述服務(wù)器的地 址為openO函數(shù)中的一個(gè)參數(shù)。服務(wù)器接收到openO函數(shù)傳來的用戶輸入信息后,在預(yù) 先設(shè)置的數(shù)據(jù)庫中查找與所述用戶輸入信息相關(guān)的信息,例如,用戶在文本輸入框中輸入 的信息為zc,與之相關(guān)的信息可以是“知春里”、“知春路”等信息。所有相關(guān)信息組成一個(gè) 相關(guān)信息集合,用一串字符串表示,每條信息之間用一個(gè)預(yù)定的標(biāo)示符來分隔,以便后續(xù)對(duì) 其進(jìn)行解析。所述標(biāo)示符可以是空格鍵、回車鍵、“&”鍵等特定標(biāo)示符中的一種。將查找到 的相關(guān)信息集合再通過XmlHttpRequest對(duì)象返回給終端。若用戶輸入的信息在服務(wù)器上 沒有查找到對(duì)應(yīng)的相關(guān)信息,則返回值為空。步驟203,接收服務(wù)器返回的信息集合,所述信息集合為預(yù)先設(shè)置的與所述用戶輸 入信息相關(guān)的信息集合;在本實(shí)施例中,首先要判斷所述信息集合的接收狀態(tài),即判斷所述信息集合是 否全部接收、所述信息集合是否是正確的結(jié)果。具體的判斷方法是檢測(cè)程序中所用參數(shù) xmlHttp 禾口 xmlHttp. status 的值,當(dāng) xmlHttp = 4 且 xmlHttp. status = 200 時(shí),表示接收 服務(wù)器返回的信息集合成功。所述信息集合在程序中用參數(shù)mlHttp.responseText的值
來表不。步驟204,將所述信息集合解析為每行存儲(chǔ)一條信息的信息列表;在本實(shí)施例中,當(dāng)xmlHttp. responseText的值不為空時(shí),對(duì)該值進(jìn)行解析。即將 步驟202中所獲得的字符串解析為漢字信息,并根據(jù)所述分隔標(biāo)示符將所述漢字信息中的 每一條信息提取出來,獲得一個(gè)信息列表。步驟205,獲取所述信息列表的顯示位置;在本實(shí)施例中,獲取所述信息列表的顯示位置之前,首先設(shè)置一個(gè)顯示區(qū)域,用 于放置信息列表,顯示信息列表實(shí)際上是顯示該顯示區(qū)域。并且,該顯示區(qū)域在沒有用戶輸入、不需要顯示相關(guān)信息的情況下,是隱藏的。本實(shí)施例中,采用HTML中用來為文本內(nèi) 容提供結(jié)構(gòu)和背景的Div標(biāo)簽來實(shí)現(xiàn)。具體設(shè)置Div標(biāo)簽的代碼如下,此代碼設(shè)置了 Div 標(biāo)簽的位置、寬度、邊框樣式等屬性<div id = 〃 suggest “ style = " z-index:10 ; display:none ;position:absolute ;text—align:left ;width:153px ;border:Ipx solid #000000" X/div>。本實(shí)施例中,可以設(shè)置在文本輸入框附近的任何位置來顯示該顯示區(qū)域。獲取該 顯示區(qū)域的代碼如下document. getElementByldC suggest ‘ ). style, display =“。步驟206,在所述顯示位置上顯示所述信息列表;在本實(shí)施例中,將所述信息列表中的每行信息放置到一個(gè)小的Div標(biāo)簽中,再將 所有小Div標(biāo)簽放置到步驟205所述的顯示區(qū)域中,通過顯示所述顯示區(qū)域來顯示信息列 表,具體代碼如下var str = xmlHttp. responseText ;strl = str. split (〃 &〃 );var result =“‘‘;for(i = 0 ;i < strl. length—1 ;i++) {result+ = ‘‘ < divid = \ “ menultem “ + (i +1) + “ \ “ onmouseover = \" forceMenuItemC +(i+l) + 〃);\〃 〃 ;result+=" onmouseout = \〃 IoseMenuItem(〃 +(i+l) + 〃);\〃 “;result+ = " onclick = \〃 givNumberC +i+〃 )\〃ondblclick = \ " choseNumber( " +i+ 〃 );\ 〃 “ ;result+ = ' class =〃 suggest_link" >' +strl[i] + '</div>';}document. getElementByldC suggest" ). innerHTML = result ;步驟207,從所述信息列表中選取用戶指定的信息。在本實(shí)施例中,用戶從顯示出來的信息列表中用鍵盤或者鼠標(biāo)選擇自己想要的信息。例如,信息列表中列出兩條相關(guān)信息“知春路”和“知春里”,用戶選擇“知春路”,該詞會(huì)被系統(tǒng)選取,自動(dòng)進(jìn)入文本輸入框中作為查詢路線的關(guān)鍵詞。具體用鍵盤選取信息方法為首先用層疊樣式表(Cascading Style Sheets,CSS) 設(shè)置被選中信息的樣式,包括被選中信息的寬度、背景顏色等屬性,其代碼如下suggeSt_ 1 ink {background-color #FFFFCC ;padding:2px 6px 2px 6px ;width: 141px ;}。然后,在 程序中設(shè)置一個(gè)指針變量var menuFocusIndex = _1,用來標(biāo)識(shí)當(dāng)前選中的信息,稱為焦點(diǎn) 值。當(dāng)用戶敲擊向下鍵,即檢測(cè)到的鍵碼為40時(shí),menuFocusIndex的值加1,并通過上述層 疊樣式表CSS設(shè)置所述焦點(diǎn)值的樣式,其它未選中信息的樣式為默認(rèn)值,同時(shí)將焦點(diǎn)值顯 示在文本輸入框中;當(dāng)用戶敲擊向上鍵,即檢測(cè)到的鍵碼為38時(shí),menuFocusIndex的值減 1,并通過上述層疊樣式表CSS設(shè)置所述焦點(diǎn)值的樣式,其它未選中信息的樣式為默認(rèn)值, 同時(shí)將焦點(diǎn)值顯示在文本輸入框中;當(dāng)用戶敲擊回車鍵確認(rèn)所選中的信息,即檢測(cè)到的鍵碼為13時(shí),將顯示區(qū)域Div標(biāo)簽中的值清空,并隱藏該顯示區(qū)域,同時(shí)將menuFocusIndex 的值變?yōu)槌跏贾?1,表示選取信息完成。具體用鼠標(biāo)選取信息方法為在信息列表中的每行信息所對(duì)應(yīng)的Div標(biāo)簽上加入 鼠標(biāo)監(jiān)聽事件onmouseover禾口 onmouseout,其中,onmouseover表示當(dāng)鼠標(biāo)移動(dòng)至Ij某條信息 上時(shí),用層疊樣式表CSS設(shè)置所述信息樣式;onmouseout表示當(dāng)鼠標(biāo)移出該信息時(shí),該信息 樣式恢復(fù)為默認(rèn);由用戶點(diǎn)擊鼠標(biāo)確認(rèn)所選中的信息。本發(fā)明實(shí)施例提供的獲取信息的方法,由于是根據(jù)用戶輸入的信息從服務(wù)器端獲 取與所述用戶輸入信息相關(guān)的信息集合,從所述信息集合中選取用戶所需要的信息,使用 戶在僅輸入一部分字母或漢字的情況下,獲取與該字母或漢字相關(guān)的所有關(guān)鍵詞,供用戶 進(jìn)行選擇。解決了現(xiàn)有技術(shù)中,用戶必須輸入一個(gè)完整的關(guān)鍵詞,才能獲取對(duì)應(yīng)路線的問 題。如圖3所示,本發(fā)明實(shí)施例還提供一種獲取信息的裝置,包括第一獲取單元301,用于獲取用戶輸入信息;在本實(shí)施例中,用超文本標(biāo)記語言HTML所編寫的文本輸入框來獲取用戶的輸入 信息。當(dāng)用戶按下的是回車鍵,或者取消鍵ESC,或者向上鍵,或者向下鍵等按鍵時(shí),不作為 用戶輸入信息獲取。發(fā)送單元302,用于向服務(wù)器發(fā)送由所述第一獲取單元301獲取的用戶輸入信息;在本實(shí)施例中,采用Ajax技術(shù)的異步性向服務(wù)器發(fā)送所獲取到的用戶輸入信息。由于Ajax技術(shù)的異步性可以實(shí)現(xiàn)當(dāng)前頁面無刷新地與所述服務(wù)器交互數(shù)據(jù),使得用戶體 驗(yàn)更好。接收單元303,用于接收服務(wù)器返回的信息集合,所述信息集合為預(yù)先設(shè)置的與所 述用戶輸入信息相關(guān)的信息集合;選取單元304,用于從由所述接收單元303接收的信息集合中選取用戶指定的信 肩、ο在本實(shí)施例中,可以用鼠標(biāo)或者鍵盤來選取用戶指定的信息。進(jìn)一步地,如圖4所示,所述獲取信息的裝置還包括解析單元305,用于將由所述接收單元303接收的信息集合解析為每行存儲(chǔ)一條 信息的信息列表;第二獲取單元307,用于獲取由所述解析單元305解析的信息列表的顯示位置;顯示單元306,用于顯示由所述解析單元305解析的信息列表。在本實(shí)施例中,將所述信息列表放置到一個(gè)預(yù)先設(shè)定的顯示區(qū)域中,通過顯示該 顯示區(qū)域來顯示所述信息列表。以上裝置的具體實(shí)現(xiàn)方法可以參見如圖2所示的步驟201 207所述,此處不再贅述。本發(fā)明實(shí)施例提供的獲取信息的裝置,由于是根據(jù)用戶輸入的信息從服務(wù)器端獲 取與所述用戶輸入信息相關(guān)的信息集合,從所述信息集合中選取用戶所需要的信息,使用 戶在僅輸入一部分字母或漢字的情況下,獲取與該字母或漢字相關(guān)的所有關(guān)鍵詞,供用戶 進(jìn)行選擇。解決了現(xiàn)有技術(shù)中,用戶必須輸入一個(gè)完整的關(guān)鍵詞,才能獲取對(duì)應(yīng)路線的問 題。
本發(fā)明實(shí)施例提供的技術(shù)方案可以應(yīng)用在信息的智能提示等技術(shù)領(lǐng)域中。本領(lǐng)域普通技術(shù)人員可以理解實(shí)現(xiàn)上述實(shí)施例方法中的全部或部分步驟是可以 通過程序來指令相關(guān)的硬件完成,所述的程序可以存儲(chǔ)于一計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)中,如 ROM/RAM、磁碟或光盤等。以上所述,僅為本發(fā)明的具體實(shí)施方式
,但本發(fā)明的保護(hù)范圍并不局限于此,任何 熟悉本技術(shù)領(lǐng)域的技術(shù)人員在本發(fā)明揭露的技術(shù)范圍內(nèi),可輕易想到變化或替換,都應(yīng)涵蓋在本發(fā)明的保護(hù)范圍之內(nèi)。因此,本發(fā)明的保護(hù)范圍應(yīng)所述以權(quán)利要求的保護(hù)范圍為準(zhǔn)。
權(quán)利要求
一種獲取信息的方法,其特征在于,包括獲取用戶輸入信息;向服務(wù)器發(fā)送所述用戶輸入信息;接收服務(wù)器返回的信息集合,所述信息集合為預(yù)先設(shè)置的與所述用戶輸入信息相關(guān)的信息集合;從所述信息集合中選取用戶指定的信息。
2.根據(jù)權(quán)利要求1所述的獲取信息的方法,其特征在于,所述接收服務(wù)器返回的信息 列表之后,還包括將所述信息集合解析為每行存儲(chǔ)一條信息的信息列表。
3.根據(jù)權(quán)利要求2所述的獲取信息的方法,其特征在于,所述將所述信息集合解析為 每行存儲(chǔ)一條信息的信息列表之后,還包括顯示所述信息列表。
4.根據(jù)權(quán)利要求3所述的獲取信息的方法,其特征在于,所述顯示所述信息列表之前, 還包括獲取所述信息列表的顯示位置;所述顯示所述信息列表為在所述顯示位置上顯示所述信息列表。
5.根據(jù)權(quán)利要求1所述的獲取信息的方法,其特征在于,所述向服務(wù)器發(fā)送所述用戶輸入信息為根據(jù)網(wǎng)頁開發(fā)技術(shù)Ajax的異步性向服務(wù)器 發(fā)送所述用戶輸入信息;所述接收服務(wù)器返回的信息集合為根據(jù)網(wǎng)頁開發(fā)技術(shù)Ajax的異步性接收服務(wù)器返 回的信息集合。
6.一種獲取信息的裝置,其特征在于,包括 第一獲取單元,用于獲取用戶輸入信息;發(fā)送單元,用于向服務(wù)器發(fā)送由所述第一獲取單元獲取的用戶輸入信息; 接收單元,用于接收服務(wù)器返回的信息集合,所述信息集合為預(yù)先設(shè)置的與所述用戶 輸入信息相關(guān)的信息集合;選取單元,用于從由所述接收單元接收的信息集合中選取用戶指定的信息。
7.根據(jù)權(quán)利要求6所述的獲取信息的裝置,其特征在于,所述裝置還包括解析單元,用于將由所述接收單元接收的信息集合解析為每行存儲(chǔ)一條信息的信息列表。
8.根據(jù)權(quán)利要求7所述的獲取信息的方法,其特征在于,所述裝置還包括 顯示單元,用于顯示由所述解析單元解析的信息列表。
9.根據(jù)權(quán)利要求8所述的獲取信息的方法,其特征在于,所述裝置還包括 第二獲取單元,用于獲取由所述解析單元解析的信息列表的顯示位置。
全文摘要
本發(fā)明實(shí)施例公開一種獲取信息的方法和裝置,涉及智能交通領(lǐng)域,以解決現(xiàn)有的交通信息服務(wù)系統(tǒng)中,由于用戶必須輸入一個(gè)完整的關(guān)鍵詞,才能獲取對(duì)應(yīng)的信息,從而使用戶的輸入操作繁瑣的問題。本發(fā)明提供的技術(shù)方案包括獲取用戶輸入信息;向服務(wù)器發(fā)送所述用戶輸入信息;接收服務(wù)器返回的信息集合,所述信息集合為預(yù)先設(shè)置的與所述用戶輸入信息相關(guān)的信息集合;從所述信息集合中選取用戶指定的信息。本發(fā)明實(shí)施例提供的技術(shù)方案可以應(yīng)用在信息的智能提示等技術(shù)領(lǐng)域中。
文檔編號(hào)G06F17/30GK101799815SQ20091024414
公開日2010年8月11日 申請(qǐng)日期2009年12月30日 優(yōu)先權(quán)日2009年12月30日
發(fā)明者曹家齊, 李建軍, 薛明, 鄭小華 申請(qǐng)人:北京世紀(jì)高通科技有限公司