#
<input type = "button" class = "myBtn" name="selectbtn" value = "選定" onClick="selectgoods_on2()" >
setBtnDisable(myform.selectbtn);
setBtnEnable(myform.selectbtn);
function setBtnDisable(obj){
obj.setExpression("disabled", "true");
}
function setBtnEnable(obj){
obj.setExpression("disabled", "false");
}
parseFloat 轉換成浮點數
parseInt 轉換成整數.
這兩個函數都有些容錯性的,比如"123abc"會變成123.
如果樓主希望更準確一些,其實可以判斷一下,然后用eval,像這樣
不過也可以使用這樣的方法:
var a = "234" ;
a = a.replace(/(^[\\s]*)|([\\s]*$)/g, "");
if( a !="" && !isNaN( a ) )
{//如果是數字
a = eval( a )
}
else
{//如果不是數字
a = null
}
javascript有兩種數據類型的轉換方法:一種是將整個值從一種類型轉換為另一種數據類型(稱作基本數據類型轉換),另一種方法是從一個值中提取另一種類型的值,并完成轉換工作。
基本數據類型轉換的三種方法:
1.轉換為字符型:String(); 例:String(678)的結果為"678"
2.轉換為數值型:Number(); 例:Number("678")的結果為678
3.轉換為布爾型:Boolean(); 例:Boolean("aaa")的結果為true
從一個值中提取另一種類型的值的方法:
1.提取字符串中的整數:parseInt(); 例:parseInt("123zhang")的結果為123
2.提取字符串中的浮點數:parseFloat(); 例:parseFloat("0.55zhang")的結果為0.55
3.執行用字符串表示的一段javascript代碼:eval(); 例:zhang=eval("1+1")的結果zhang=2
錯誤:
Exception in thread "main" javax.naming.CommunicationException: Could not obtain connection to any of these urls: 192.168.17.105:1099 and discovery failed with error: javax.naming.CommunicationException: Receive timed out [Root exception is java.net.SocketTimeoutException: Receive timed out] [Root exception is javax.naming.CommunicationException: Failed to connect to server /192.168.17.105:1099 [Root exception is javax.naming.ServiceUnavailableException: Failed to connect to server /192.168.17.105:1099 [Root exception is java.net.ConnectException: Connection refused: connect]]]
at org.jnp.interfaces.NamingContext.checkRef(NamingContext.java:1725)
at org.jnp.interfaces.NamingContext.lookup(NamingContext.java:689)
at org.jnp.interfaces.NamingContext.lookup(NamingContext.java:682)
at javax.naming.InitialContext.lookup(InitialContext.java:392)
at test.Client.main(Client.java:29)
處理:
在本文中將編寫一個簡單的無狀態SessionBean。在發布EJB時,一般需要將EJB程序以jar文件的形式進行發布。這些jar文件將被放在<JBoss安裝目錄>\server\default\deploy目錄中。如果在Eclipse中開發EJB程序,需要進行一些配置。首選需要在首選項(Preferences)對話框中設置JBoss的安裝目錄(如D:\jboss5)。然后在運行配置對話框中添加jboss的運行項。在jboss4.2及以后的版本中,默認情況下jboss只接收來自localhost或127.0.0.1的請求,也就是只接收本地的訪問。為了使jboss接收來自其他地址的請求,在啟動jboss時需要使用-b命令行參數進行設置。如下面的啟動命令所示:
run.bat -b 200.200.200.123
run.bat -b 0.0.0.0
上面的第一行命令表示jboss可以接收來自200.200.200.123的請求。第二條命令表示jboss可以接收來自任意地址的請求。如果不設置-b參數,以非本機方式訪問EJB時,JBoss會拋出如上異常:
有些時候,我們會遇到版本不匹配的問題。如: bad class file: /usr/java/jdk1.5.0_06/jre/lib/rt.jar(java/lang/Object.class)class file has wrong version 49.0, should be 48.0Please remove or make sure it appears in the correct subdirectory of the classpath.這是因為編譯環境和運行環境的不一致造成的,比如tomcat5.5和jdk1.5配合的時候,可能就會出現。解決這個問題的方法:copy jdk1.5的lib/tools.jar到tomcat5.5的common/lib/tools.jar,覆蓋掉原有文件就可以了。
Unsupported major.minor version 49.0
電腦中裝了很多JDK的版本,Eclipse中也分別有JDK1.4,JRE1.5,JRE1.6的Project,不同的項目需要經常切換JDK版本,執行某工程的時候突然出現“Unsupported major.minor version 49.0”的錯誤。
出現這樣錯誤的原因是JDK1.5下編譯的東西被放到了JDK1.4下執行。
Eclipse中修改方法:
「Window」->「Preferences」->「Java」->「Compiler」->「JDK Compliance level」->「1.4」改成1.4就OK了。
錯誤:class file has wrong version 49.0, should be 48.0也有可能是這個原因,我就活活被整了三天!
錯誤提示:The type ThreadLocal is not generic; it cannot be parameterized with arguments <Session>
另外每個項目下的“JRE System Library[jdk1.4.2]"如果你看到這個JDK版本跟你不配,那么你就需要在類庫右擊:configure->edit library更改你的JRE了,因為JDK1。5以上有的新東東,1.4.5沒有,所以就報這個錯啦。
同一臺機器運行多個JBoss[JBoss版本為4.2.3],配置如下:
Step 1. 修改JBOSS_HOME/server/default/conf/jboss-service.xml
查找到:mbean - ServiceBindingManager,將其注釋去掉
Step 2. 修改JBOSS_HOME/docs/examples/binding-manager/sample-bindings.xml中ports-01端口,避免出現 port 沖突的問題
Step 3. 修改JBOSS_HOME/server/default/deploy/jboss-web.deployer/server.xml中的端口
修改 HTTP/1.1 Connector port
修改 AJP 1.3 Connector port
Step 4. 修改JBOSS_HOME/server/default/deploy/jms/uil2-service.xml
修改 ServerBindPort
這樣即可在同一機器跑多個JBoss,以上第三步的AJP以及第四步可能項目沒有涉及到,沒有修改亦可...
JBoss官方文檔如下連接:
http://www.jboss.org/community/docs/DOC-9384
出現錯誤:
2006-04-21 17:19:19,796 ERROR [org.jboss.web.WebService] Starting failed jboss:service=WebService
java.net.BindException: Address already in use: JVM_Bind
解決辦法:
修改 \jboss-4.0.4.GA\server\default\conf 目錄下的jboss-services.xml內的org.jboss.naming.NamingService里面的倆個port,確保沒有沖突。
經驗證主要有以下幾個地方需要改動,用來避免啟動時的地址已經被綁定的異常。
環境:JBoss 4.2.2GA,JDK 1.5
1. $JBoss_home/server/default/deploy/ejb3.deployer/META-INF/jboss-service.xml
修改3873端口的值;
2. $JBoss_home/server/default/deploy/jboss-web.deployer/server.xml
修改8080,8009,8443端口值。
3. $JBoss_home/server/default/conf/jboss-service.xml
修改8083,1098,1099,4444,4445,4446端口值
4. $JBoss_home/server/default/conf/jboss-minimal.xml
修改1099端口值,與3中保持一致。
5. $JBoss_home/server/default/deploy/jms/uil2-service.xml
修改8093端口值。
--禁用某個表上的所有觸發器
ALTER TABLE 你的表 DISABLE TRIGGER all
--啟用某個表上的所有觸發器
ALTER TABLE 你的表 enable TRIGGER all
--禁用所有表上的所有觸發器
exec sp_msforeachtable 'ALTER TABLE ? DISABLE TRIGGER all'
--啟用所有表上的所有觸發器
exec sp_msforeachtable 'ALTER TABLE ? enable TRIGGER all'
忙忙停?;藘商鞎r間弄出來的,這這里與大家共享,這個存儲過程實現后,大伙就不用重復勞動??!
表1
bill
0001
0002
0003
....
要根據表1得出結算如0001,0002,0003,......
declare @num int,
@sqls nvarchar(4000)
set @sqls='select count(*) from tableName'
exec(@sqls)
--如何將exec執行結果放入變量中?
declare @num int,
@sqls nvarchar(4000)
set @sqls='select @a=count(*) from t_paystock_h '
exec sp_executesql @sqls,N'@a int output',@num output
select @num
alter procedure usp_Tolineout
@table varchar(50),
@wherebill varchar(20),
@orderbill varchar(20),
@count_bill varchar(20),
@bill_value varchar(20),
@print_bill varchar(1000)
as--Author fly
begin
-- @table 表名 @wherebill 查詢條件字段 @orderbill 排序字段 @count_bill 要統計的單號,也是要產生字符串的字段,@bill_value 單據號,@print_bill 得出的結果寫入哪個字段
declare @cw_count int
declare @i int
declare @sql nvarchar(4000),
@sql2 nvarchar(4000),
@str_bill nvarchar(4000)
set @i=1
set @cw_count=1
set @sql = N'select @count = count(distinct '+@count_bill+') from '+@table+' where '+@wherebill+'='+''''+@bill_value+''''+''
exec sp_executesql @sql,N'@count int output',@cw_count output
while (@i<=@cw_count)
begin
set @sql2 = N'select top 1 @strbill=isnull(convert(varchar(100),@strbill),'''')+case isnull(@strbill,'''') when '''' then '''' else '','' end +convert(varchar(30),'+@count_bill+') from
(select top '+convert(varchar(10),@i,126)+' '+@count_bill+','+@wherebill+' from '+@table+' where bill='''+@bill_value+''' order by '+@orderbill+' desc) a
where '+@wherebill+'='''+@bill_value+''' order by '+@orderbill+' asc'
exec sp_executesql @sql2,N'@strbill varchar(500) output',@str_bill output
set @i=@i+1
end /***/
print '結果為:'+@str_bill
end
網上轉載一例:
create table tb(truename varchar(20),shuxue int,yuwen int,yinyu int)
insert tb select
'張三', 100 ,80, 80 union all select
'李四', 90 ,90 ,60 union all select
'王五', 59, 80 ,44
select truename,fz=shuxue+yuwen+yinyu ,1 as id into #t
from tb
declare @s varchar(4000)
select @s=isnull(@s+',','')+'max(case when truename='''+truename+''' then fz else 0 end) ['+truename+']'
from #t
set @s='select id,'+@s+' from #t group by id'
exec(@s)
id 張三 李四 王五
----------- ----------- ----------- -----------
1 260 240 183
(1 行受影響)
drop table tb
drop table #t
JavaScript中indexOf函數方法返回一個整數值,指出 String 對象內子字符串的開始位置。如果沒有找到子字符串,則返回 -1。如果 startindex 是負數,則 startindex 被當作零。如果它比最大的字符位置索引還大,則它被當作最大的可能索引。
indexOf函數是從左向右執行查找。否則,該方法與 lastIndexOf 相同。
下面的示例說明了indexOf函數方法的用法。
function IndexDemo(str2){
var str1 = "BABEBIBOBUBABEBIBOBU"
1.HTTP請求格式:
<request line>
<headers>
<blank line>
[<request-body>]
在HTTP請求中,第一行必須是一個請求行(request line),用來說明請求類型、要訪問的資源以及使用的HTTP版本。緊接著是一個首部(header)小節,用來說明服務器要使用的附加信息。在首部之后是一個空行,再此之后可以添加任意的其他數據[稱之為主體(body)]。
2.GET與POST區別
HTTP定義了與服務器交互的不同方法,最基本的方法是 GET 和 POST.
HTTP-GET和HTTP-POST是使用HTTP的標準協議動詞,用于編碼和傳送變量名/變量值對參數,并且使用相關的請求語義。每個HTTP-GET和HTTP-POST都由一系列HTTP請求頭組成,這些請求頭定義了客戶端從服務器請求了什么,而響應則是由一系列HTTP應答頭和應答數據組成,如果請求成功則返回應答。
HTTP-GET以使用MIME類型application/x-www-form-urlencoded的urlencoded文本的格式傳遞參數。Urlencoding是一種字符編碼,保證被傳送的參數由遵循規范的文本組成,例如一個空格的編碼是"%20"。附加參數還能被認為是一個查詢字符串。
與HTTP-GET類似,HTTP-POST參數也是被URL編碼的。然而,變量名/變量值不作為URL的一部分被傳送,而是放在實際的HTTP請求消息內部被傳送。
(1)get是從服務器上獲取數據,post是向服務器傳送數據。
(1) 在客戶端,Get方式在通過URL提交數據,數據在URL中可以看到;POST方式,數據放置在HTML HEADER內提交。
(2) 對于get方式,服務器端用Request.QueryString獲取變量的值,對于post方式,服務器端用Request.Form獲取提交的數據。
(2) GET方式提交的數據最多只能有1024字節,而POST則沒有此限制。
(3) 安全性問題。正如在(1)中提到,使用 Get 的時候,參數會顯示在地址欄上,而 Post 不會。所以,如果這些數據是中文數據而且是非敏感數據,那么使用 get;如果用戶輸入的數據不是中文字符而且包含敏感數據,那么還是使用 post為好。
注:所謂安全的意味著該操作用于獲取信息而非修改信息。冪等的意味著對同一 URL 的多個請求應該返回同樣的結果。完整的定義并不像看起來那樣嚴格。換句話說,GET 請求一般不應產生副作用。從根本上講,其目標是當用戶打開一個鏈接時,她可以確信從自身的角度來看沒有改變資源。比如,新聞站點的頭版不斷更新。雖然第二次請求會返回不同的一批新聞,該操作仍然被認為是安全的和冪等的,因為它總是返回當前的新聞。反之亦然。POST 請求就不那么輕松了。POST 表示可能改變服務器上的資源的請求。仍然以新聞站點為例,讀者對文章的注解應該通過 POST 請求實現,因為在注解提交之后站點已經不同了(比方說文章下面出現一條注解)。
下面舉一個簡單的例子來說明它們的區別:
<!-分別通過get和post方式提交表單-->
<FORM ACTION="getpost.asp" METHOD="get">
<INPUT TYPE="text" NAME="Text" VALUE="http://wxf0701.cnblogs.com//>
<INPUT TYPE="submit" VALUE="Get方式"></INPUT>
</FORM>
<BR>
<FORM ACTION="getpost.asp" METHOD="post">
<INPUT TYPE="text" NAME="Text" VALUE="http://wxf0701.cnblogs.com/>
<INPUT TYPE="submit" VALUE="Post方式"></INPUT>
</FORM>
<BR>
<% If Request.QueryString("Text") <> "" Then %>
通過get方式傳遞的字符串是: "<B><%= Request.QueryString("Text") %></B>"<BR>
<% End If %>
<% If Request.Form("Text") <> "" Then %>
通過Post方式傳遞的字符串是: "<B><%= Request.Form("Text") %></B>"<BR>
<% End If %>
begin
leftHeight:=800; //定義變量,指定當空余空間高度大于這個值時就輸出空行
While (FreeSpace>leftHeight) do
Begin
ShowBand(Child1); // 輸出空行Band
End
end
說明:Child1設置子欄為空
在注腳屬性欄填上:onbeforeprint寫入前面的腳本