本發(fā)明涉及計算機(jī)技術(shù)領(lǐng)域,具體而言,涉及一種校驗輸入內(nèi)容的方法和裝置。
背景技術(shù):
目前,很多網(wǎng)頁中的提供用戶填寫內(nèi)容的功能,例如填寫數(shù)字,很多網(wǎng)站需要對用戶的數(shù)字輸入進(jìn)行校驗,在只進(jìn)行簡單校驗(如是否為數(shù)字)的情況下,一般都是采用彈出提示,或者一直在填寫數(shù)字的界面上顯示提示信息以及標(biāo)注錯誤位置。
如果采用彈出提示的方法,待提示關(guān)閉或消失后,用戶將只能在再次觸發(fā)校驗后才能再次觀看提示信息;如果采用在界面上顯示提示信息并標(biāo)注錯誤位置的方式,提示文字一直顯示,則需預(yù)留文字位置,限制了很多界面設(shè)計方式方法。
技術(shù)實現(xiàn)要素:
鑒于上述問題,提出了本發(fā)明以便提供一種克服上述問題或者至少部分地解決上述問題的校驗輸入內(nèi)容的方法和裝置。
依據(jù)本發(fā)明的一個方面,提供了一種校驗輸入內(nèi)容的方法,包括:檢測用于供用戶輸入內(nèi)容的輸入控件是否失去焦點事件;在所述輸入控件失去焦點事件時,判斷所述用戶輸入的內(nèi)容是否符合預(yù)設(shè)的規(guī)則,并根據(jù)判斷結(jié)果生成對所述內(nèi)容的提示信息并進(jìn)行顯示。
可選地,前述的校驗輸入內(nèi)容的方法,還包括:在所述提示信息的顯示時間到達(dá)預(yù)定閾值時,消除所述提示信息。
可選地,前述的校驗輸入內(nèi)容的方法,判斷所述用戶輸入的內(nèi)容是否符 合預(yù)設(shè)的規(guī)則,并根據(jù)判斷結(jié)果生成對所述內(nèi)容的提示信息并進(jìn)行顯示,具體包括:在所述內(nèi)容不符合所述規(guī)則時,生成所述提示信息以提示所述內(nèi)容不符合所述規(guī)則。
可選地,前述的校驗輸入內(nèi)容的方法,判斷所述用戶輸入的內(nèi)容是否符合預(yù)設(shè)的規(guī)則,并根據(jù)判斷結(jié)果生成對所述內(nèi)容的提示信息并進(jìn)行顯示,具體包括:判斷所述內(nèi)容是否符合預(yù)設(shè)的類型和/或范圍,并在所述內(nèi)容與所述類型和/或范圍不符時生成用于提示所述內(nèi)容與所述類型和/或范圍不符的提示信息;在所述內(nèi)容與所述類型和/或范圍相符時,按預(yù)定方式對所述內(nèi)容中的具體值進(jìn)行計算,并判斷計算結(jié)果是否與預(yù)設(shè)結(jié)果匹配,并在所述計算結(jié)果與所述預(yù)設(shè)結(jié)果不匹配時生成用于提示所述計算結(jié)果與所述預(yù)設(shè)結(jié)果不匹配的提示信息。
可選地,前述的校驗輸入內(nèi)容的方法,還包括:在所述內(nèi)容與所述類型和/或范圍不符時修改所述輸入控件的狀態(tài)以提示所述內(nèi)容與所述類型和/或范圍不符。
依據(jù)本發(fā)明的另一方面,提供了一種校驗輸入內(nèi)容的裝置,包括:檢測模塊,用于檢測用于供用戶輸入內(nèi)容的輸入控件是否失去焦點事件;提示信息模塊,用于在所述輸入控件失去焦點事件時,判斷所述用戶輸入的內(nèi)容是否符合預(yù)設(shè)的規(guī)則,并根據(jù)判斷結(jié)果生成對所述內(nèi)容的提示信息并進(jìn)行顯示。
可選地,前述的校驗輸入內(nèi)容的裝置,所述提示信息模塊還在所述提示信息的顯示時間到達(dá)預(yù)定閾值時,消除所述提示信息。
可選地,前述的校驗輸入內(nèi)容的裝置,所述提示信息模塊在所述內(nèi)容不符合所述規(guī)則時,生成所述提示信息以提示所述內(nèi)容不符合所述規(guī)則。
可選地,前述的校驗輸入內(nèi)容的裝置,所述提示信息模塊判斷所述內(nèi)容是否符合預(yù)設(shè)的類型和/或范圍,并在所述內(nèi)容與所述類型和/或范圍不符時生成用于提示所述內(nèi)容與所述類型和/或范圍不符的提示信息;所述提示信息模塊在所述內(nèi)容與所述類型和/或范圍相符時,按預(yù)定方式對所述內(nèi)容中的具體值進(jìn)行計算,并判斷計算結(jié)果是否與預(yù)設(shè)結(jié)果匹配,并在所述計算結(jié)果與所述預(yù)設(shè)結(jié)果不匹配時生成用于提示所述計算結(jié)果與所述預(yù)設(shè)結(jié)果不匹配的提示信息。
可選地,前述的校驗輸入內(nèi)容的裝置,還包括:狀態(tài)模塊,用于在所述內(nèi)容與所述類型和/或范圍不符時修改所述輸入控件的狀態(tài)以提示所述內(nèi)容與所述類型和/或范圍不符。
根據(jù)以上技術(shù)方案,本發(fā)明的校驗輸入內(nèi)容的方法和裝置至少具有以下優(yōu)點:
根據(jù)本發(fā)明的技術(shù)方案,實時檢測輸入控件是否失去焦點事件,只要輸入控件失去焦點事件,就表示用戶完成在輸入控件中的輸入,此時可以基于用戶輸入的內(nèi)容的進(jìn)行校驗;可見在本發(fā)明的實施例中,只要輸入控件失去焦點事件就會觸發(fā)校驗生成的新的提示信息,不需要用戶自行觸發(fā)校驗,也不會只保持舊的校驗信息。
上述說明僅是本發(fā)明技術(shù)方案的概述,為了能夠更清楚了解本發(fā)明的技術(shù)手段,而可依照說明書的內(nèi)容予以實施,并且為了讓本發(fā)明的上述和其它目的、特征和優(yōu)點能夠更明顯易懂,以下特舉本發(fā)明的具體實施方式。
附圖說明
通過閱讀下文優(yōu)選實施方式的詳細(xì)描述,各種其他的優(yōu)點和益處對于本領(lǐng)域普通技術(shù)人員將變得清楚明了。附圖僅用于示出優(yōu)選實施方式的目的,而并不認(rèn)為是對本發(fā)明的限制。而且在整個附圖中,用相同的參考符號表示相同的部件。在附圖中:
圖1示出了根據(jù)本發(fā)明的一個實施例的校驗輸入內(nèi)容的方法的流程圖;
圖2示出了根據(jù)本發(fā)明的一個實施例的校驗輸入內(nèi)容的方法的流程圖;
圖3示出了根據(jù)本發(fā)明的一個實施例的校驗輸入內(nèi)容的方法的流程圖;
圖4示出了根據(jù)本發(fā)明的一個實施例的校驗輸入內(nèi)容的方法的效果圖;
圖5示出了根據(jù)本發(fā)明的一個實施例的校驗輸入內(nèi)容的方法的效果圖;
圖6示出了根據(jù)本發(fā)明的一個實施例的校驗輸入內(nèi)容的裝置的框圖;
圖7示出了根據(jù)本發(fā)明的一個實施例的校驗輸入內(nèi)容的裝置的框圖。
具體實施方式
下面將參照附圖更詳細(xì)地描述本公開的示例性實施例。雖然附圖中顯示了本公開的示例性實施例,然而應(yīng)當(dāng)理解,可以以各種形式實現(xiàn)本公開而不應(yīng)被這里闡述的實施例所限制。相反,提供這些實施例是為了能夠更透徹地理解本公開,并且能夠?qū)⒈竟_的范圍完整的傳達(dá)給本領(lǐng)域的技術(shù)人員。
如圖1所示,本發(fā)明的一個實施例中提供了一種校驗輸入內(nèi)容的方法,包括:
步驟110,檢測用于供用戶輸入內(nèi)容的輸入控件是否失去焦點事件。在本實施例中,當(dāng)輸入控件失去焦點事件,則表示用戶完成了一次輸入操作;具體地,為需要進(jìn)行校驗的輸入控件分別注冊失去焦點onblur事件。
步驟120,在輸入控件失去焦點事件時,判斷用戶輸入的內(nèi)容是否符合預(yù)設(shè)的規(guī)則,并根據(jù)判斷結(jié)果生成對內(nèi)容的提示信息并進(jìn)行顯示。在本實施例中,對預(yù)設(shè)規(guī)則不進(jìn)行限制,例如,對用戶輸入的地址進(jìn)行校驗,所輸入的市必須是屬于所輸入的省,如果不是,則可能是用戶輸入的市不正確,也可能是省不正確,所以此時就可以把省市的輸入控件區(qū)域進(jìn)行整體警示。
根據(jù)本實施例的技術(shù)方案中,時檢測輸入控件是否失去焦點事件,只要輸入控件失去焦點事件,就表示用戶完成在輸入控件中的輸入,此時可以基于用戶輸入的內(nèi)容的進(jìn)行校驗;可見在本發(fā)明的實施例中,只要輸入控件失去焦點事件就會觸發(fā)校驗生成的新的提示信息,不需要用戶自行觸發(fā)校驗,也不會只保持舊的校驗信息。
如圖2所示,本發(fā)明的一個實施例中提供了一種校驗輸入內(nèi)容的方法,包括:
步驟210,檢測用于供用戶輸入內(nèi)容的輸入控件是否失去焦點事件。
步驟220,在輸入控件失去焦點事件時,判斷用戶輸入的內(nèi)容是否符合預(yù)設(shè)的規(guī)則,在內(nèi)容不符合規(guī)則時,生成提示信息以提示內(nèi)容不符合規(guī)則。在本實施例中,對提示信息的類型和/或范圍不進(jìn)行限制,彈出提示或在輸入控件同一界面上生成的提示。
步驟230,在提示信息的顯示時間到達(dá)預(yù)定閾值時,消除提示信息。在本實施例中,生成的提示信息在到達(dá)一定時間內(nèi)消失,避免對用戶的其他操作造成干擾。
如圖3所示,本發(fā)明的一個實施例中提供了一種校驗輸入內(nèi)容的方法,還包括:
步驟310,檢測用于供用戶輸入內(nèi)容的輸入控件是否失去焦點事件。
步驟320,在輸入控件失去焦點事件時,判斷內(nèi)容是否符合預(yù)設(shè)的類型和/或范圍,并在內(nèi)容與類型和/或范圍不符時生成用于提示內(nèi)容與類型和/或范圍不符的提示信息,以及修改輸入控件的狀態(tài)以提示內(nèi)容與類型和/或范圍不符。
步驟330,在內(nèi)容與類型和/或范圍相符時,按預(yù)定方式對內(nèi)容中的具體值進(jìn)行計算,并判斷計算結(jié)果是否與預(yù)設(shè)結(jié)果匹配,并在計算結(jié)果與預(yù)設(shè)結(jié)果不匹配時生成用于提示計算結(jié)果與預(yù)設(shè)結(jié)果不匹配的提示信息。在本實施例中,可見對內(nèi)容類型、范圍的判斷是具有較高的優(yōu)先級的,因為內(nèi)容類型、范圍不正確的情況下沒有必要進(jìn)行后續(xù)的判斷,所以在本實施例中首先進(jìn)行內(nèi)容類型、范圍的判斷,再進(jìn)行復(fù)雜度較高的后續(xù)判斷。
假設(shè)校驗條件如下:輸入是否為數(shù)字,輸入是否大于等0,輸入是否小于等100,所有輸入控件的值累加是否為100,校驗通過后向服務(wù)器提交數(shù)據(jù)。則根據(jù)本實施例可以如下進(jìn)行:校驗當(dāng)前輸入控件的輸入值是否為數(shù)字(類型),若不是則用alert方法(一種生成提示的方法)彈出提示用戶“請輸入數(shù)字”,且將該控件格式的邊框設(shè)為“1px red solid(即設(shè)置為紅色)”,實現(xiàn)紅色邊框進(jìn)行醒目警示;若是數(shù)字,則進(jìn)一步校驗是否是0-100(范圍)校驗不通過同樣設(shè)置為紅色邊框。若通過校驗,將該控件格式的邊框設(shè)為設(shè)為正常值。如果以上校驗都通過,再累加所有輸入控件的值,若其總和結(jié)果不為100,提示用戶“累加結(jié)果應(yīng)為100”,按前述方式設(shè)置控件格式,通過設(shè)置紅色邊框的方式標(biāo)識整個區(qū)域。如果通過校驗,則去掉紅色框選。上述校驗都通過后,再進(jìn)行數(shù)據(jù)提交,否則阻止提交操作。
具體如圖4和圖5所示,校驗時先對當(dāng)前輸入框(控件)進(jìn)行簡單校驗, 如圖4校驗當(dāng)前輸入是否為數(shù)字、是否小于0等,如果未通過校驗,則彈出一個在一定時間后自動消失的提示,告知用戶相應(yīng)信息,并用警示色(如紅色)框選整個輸入框;待校驗通過后,再進(jìn)行復(fù)雜校驗,如圖5校驗5個輸入框的權(quán)值累加是否為100,如果未通過校驗,則彈出一個在一定時間后自動消失的提示,告知用戶相應(yīng)信息,并用警示色框選包括5個輸入框的校驗區(qū)域。
如圖6所示,本發(fā)明的一個實施例中提供了一種校驗輸入內(nèi)容的裝置,包括:
檢測模塊610,檢測用于供用戶輸入內(nèi)容的輸入控件是否失去焦點事件。在本實施例中,當(dāng)輸入控件失去焦點事件,則表示用戶完成了一次輸入操作;具體地,為需要進(jìn)行校驗的輸入控件分別注冊失去焦點onblur事件。
提示信息模塊620,在輸入控件失去焦點事件時,判斷用戶輸入的內(nèi)容是否符合預(yù)設(shè)的規(guī)則,并根據(jù)判斷結(jié)果生成對內(nèi)容的提示信息并進(jìn)行顯示。在本實施例中,對預(yù)設(shè)規(guī)則不進(jìn)行限制,例如,對用戶輸入的地址進(jìn)行校驗,所輸入的市必須是屬于所輸入的省,如果不是,則可能是用戶輸入的市不正確,也可能是省不正確,所以此時就可以把省市的輸入控件區(qū)域進(jìn)行整體警示。
根據(jù)本實施例的技術(shù)方案中,時檢測輸入控件是否失去焦點事件,只要輸入控件失去焦點事件,就表示用戶完成在輸入控件中的輸入,此時可以基于用戶輸入的內(nèi)容的進(jìn)行校驗;可見在本發(fā)明的實施例中,只要輸入控件失去焦點事件就會觸發(fā)校驗生成的新的提示信息,不需要用戶自行觸發(fā)校驗,也不會只保持舊的校驗信息。
本發(fā)明的一個實施例中提供了一種校驗輸入內(nèi)容的裝置,包括:
檢測模塊610,檢測用于供用戶輸入內(nèi)容的輸入控件是否失去焦點事件。
提示信息模塊620,在輸入控件失去焦點事件時,判斷用戶輸入的內(nèi)容是否符合預(yù)設(shè)的規(guī)則,在內(nèi)容不符合規(guī)則時,生成提示信息以提示內(nèi)容不符合 規(guī)則。在本實施例中,對提示信息的類型和/或范圍不進(jìn)行限制,彈出提示或在輸入控件同一界面上生成的提示。
提示信息模塊620,在提示信息的顯示時間到達(dá)預(yù)定閾值時,消除提示信息。在本實施例中,生成的提示信息在到達(dá)一定時間內(nèi)消失,避免對用戶的其他操作造成干擾。
如圖7所示,本發(fā)明的一個實施例中提供了一種校驗輸入內(nèi)容的裝置,包括:
檢測模塊710,檢測用于供用戶輸入內(nèi)容的輸入控件是否失去焦點事件。
提示信息模塊720,在輸入控件失去焦點事件時,判斷內(nèi)容是否符合預(yù)設(shè)的類型和/或范圍,并在內(nèi)容與類型和/或范圍不符時生成用于提示內(nèi)容與類型和/或范圍不符的提示信息,以及
狀態(tài)模塊730,修改輸入控件的狀態(tài)以提示內(nèi)容與類型和/或范圍不符。
提示信息模塊720,在內(nèi)容與類型和/或范圍相符時,按預(yù)定方式對內(nèi)容中的具體值進(jìn)行計算,并判斷計算結(jié)果是否與預(yù)設(shè)結(jié)果匹配,并在計算結(jié)果與預(yù)設(shè)結(jié)果不匹配時生成用于提示計算結(jié)果與預(yù)設(shè)結(jié)果不匹配的提示信息。在本實施例中,可見對內(nèi)容類型、范圍的判斷是具有較高的優(yōu)先級的,因為內(nèi)容類型、范圍不正確的情況下沒有必要進(jìn)行后續(xù)的判斷,所以在本實施例中首先進(jìn)行內(nèi)容類型、范圍的判斷,再進(jìn)行復(fù)雜度較高的后續(xù)判斷。
假設(shè)校驗條件如下:輸入是否為數(shù)字,輸入是否大于等0,輸入是否小于等100,所有輸入控件的值累加是否為100,校驗通過后向服務(wù)器提交數(shù)據(jù)。則根據(jù)本實施例可以如下進(jìn)行:校驗當(dāng)前輸入控件的輸入值是否為數(shù)字(類型),若不是則用alert方法(一種生成提示的方法)彈出提示用戶“請輸入數(shù)字”,且將該控件格式的邊框設(shè)為“1px red solid(即設(shè)置為紅色)”,實現(xiàn)紅色邊框進(jìn)行醒目警示;若是數(shù)字,則進(jìn)一步校驗是否是0-100(范圍)校驗不通過同樣設(shè)置為紅色邊框。若通過校驗,將該控件格式的邊框設(shè)為設(shè)為正常值。如果以上校驗都通過,再累加所有輸入控件的值,若其總和結(jié)果不為100,提示用戶“累加結(jié)果應(yīng)為100”,按前述方式設(shè)置控件格式,通過設(shè) 置紅色邊框的方式標(biāo)識整個區(qū)域。如果通過校驗,則去掉紅色框選。上述校驗都通過后,再進(jìn)行數(shù)據(jù)提交,否則阻止提交操作。
具體如圖4和圖5所示,校驗時先對當(dāng)前輸入框(控件)進(jìn)行簡單校驗,如圖4校驗當(dāng)前輸入是否為數(shù)字、是否小于0等,如果未通過校驗,則彈出一個在一定時間后自動消失的提示,告知用戶相應(yīng)信息,并用警示色(如紅色)框選整個輸入框;待校驗通過后,再進(jìn)行復(fù)雜校驗,如圖5校驗5個輸入框的權(quán)值累加是否為100,如果未通過校驗,則彈出一個在一定時間后自動消失的提示,告知用戶相應(yīng)信息,并用警示色框選包括5個輸入框的校驗區(qū)域。
在此提供的算法和顯示不與任何特定計算機(jī)、虛擬系統(tǒng)或者其它設(shè)備固有相關(guān)。各種通用系統(tǒng)也可以與基于在此的示教一起使用。根據(jù)上面的描述,構(gòu)造這類系統(tǒng)所要求的結(jié)構(gòu)是顯而易見的。此外,本發(fā)明也不針對任何特定編程語言。應(yīng)當(dāng)明白,可以利用各種編程語言實現(xiàn)在此描述的本發(fā)明的內(nèi)容,并且上面對特定語言所做的描述是為了披露本發(fā)明的最佳實施方式。
在此處所提供的說明書中,說明了大量具體細(xì)節(jié)。然而,能夠理解,本發(fā)明的實施例可以在沒有這些具體細(xì)節(jié)的情況下實踐。在一些實例中,并未詳細(xì)示出公知的方法、結(jié)構(gòu)和技術(shù),以便不模糊對本說明書的理解。
類似地,應(yīng)當(dāng)理解,為了精簡本公開并幫助理解各個發(fā)明方面中的一個或多個,在上面對本發(fā)明的示例性實施例的描述中,本發(fā)明的各個特征有時被一起分組到單個實施例、圖、或者對其的描述中。然而,并不應(yīng)將該公開的方法解釋成反映如下意圖:即所要求保護(hù)的本發(fā)明要求比在每個權(quán)利要求中所明確記載的特征更多的特征。更確切地說,如下面的權(quán)利要求書所反映的那樣,發(fā)明方面在于少于前面公開的單個實施例的所有特征。因此,遵循具體實施方式的權(quán)利要求書由此明確地并入該具體實施方式,其中每個權(quán)利要求本身都作為本發(fā)明的單獨實施例。
本領(lǐng)域那些技術(shù)人員可以理解,可以對實施例中的設(shè)備中的模塊進(jìn)行自適應(yīng)性地改變并且把它們設(shè)置在與該實施例不同的一個或多個設(shè)備中??梢园褜嵤├械哪K或單元或組件組合成一個模塊或單元或組件,以及此外可 以把它們分成多個子模塊或子單元或子組件。除了這樣的特征和/或過程或者單元中的至少一些是相互排斥之外,可以采用任何組合對本說明書(包括伴隨的權(quán)利要求、摘要和附圖)中公開的所有特征以及如此公開的任何方法或者設(shè)備的所有過程或單元進(jìn)行組合。除非另外明確陳述,本說明書(包括伴隨的權(quán)利要求、摘要和附圖)中公開的每個特征可以由提供相同、等同或相似目的的替代特征來代替。
此外,本領(lǐng)域的技術(shù)人員能夠理解,盡管在此所述的一些實施例包括其它實施例中所包括的某些特征而不是其它特征,但是不同實施例的特征的組合意味著處于本發(fā)明的范圍之內(nèi)并且形成不同的實施例。例如,在下面的權(quán)利要求書中,所要求保護(hù)的實施例的任意之一都可以以任意的組合方式來使用。
本發(fā)明的各個部件實施例可以以硬件實現(xiàn),或者以在一個或者多個處理器上運行的軟件模塊實現(xiàn),或者以它們的組合實現(xiàn)。本領(lǐng)域的技術(shù)人員應(yīng)當(dāng)理解,可以在實踐中使用微處理器或者數(shù)字信號處理器(DSP)來實現(xiàn)根據(jù)本發(fā)明實施例的在表格上添加復(fù)選框的裝置中的一些或者全部部件的一些或者全部功能。本發(fā)明還可以實現(xiàn)為用于執(zhí)行這里所描述的方法的一部分或者全部的設(shè)備或者裝置程序(例如,計算機(jī)程序和計算機(jī)程序產(chǎn)品)。這樣的實現(xiàn)本發(fā)明的程序可以存儲在計算機(jī)可讀介質(zhì)上,或者可以具有一個或者多個信號的形式。這樣的信號可以從因特網(wǎng)網(wǎng)站上下載得到,或者在載體信號上提供,或者以任何其他形式提供。
應(yīng)該注意的是上述實施例對本發(fā)明進(jìn)行說明而不是對本發(fā)明進(jìn)行限制,并且本領(lǐng)域技術(shù)人員在不脫離所附權(quán)利要求的范圍的情況下可設(shè)計出替換實施例。在權(quán)利要求中,不應(yīng)將位于括號之間的任何參考符號構(gòu)造成對權(quán)利要求的限制。單詞“包含”不排除存在未列在權(quán)利要求中的元件或步驟。位于元件之前的單詞“一”或“一個”不排除存在多個這樣的元件。本發(fā)明可以借助于包括有若干不同元件的硬件以及借助于適當(dāng)編程的計算機(jī)來實現(xiàn)。在列舉了若干裝置的單元權(quán)利要求中,這些裝置中的若干個可以是通過同一個硬件項來具體體現(xiàn)。單詞第一、第二、以及第三等的使用不表示任何順序??蓪⑦@些單詞解釋為名稱。