http://ithelp.ithome.com.tw/question/10091992
目前收集相關mobil的開發
一方面滿足求知慾
一方面手機與平板電腦為一般大眾所追逐並普及
又雲端興起
這相關得移動裝置
也變成一般人該擁有的基本知識
2012年10月3日 星期三
2012年9月10日 星期一
放手
送孩子去義大燕巢分部,是大一新生住宿報到,真見識到父母沒放手,大部分開車來,在報到處領推車推行李,幾乎父母在推,孩子則跟著走,感覺像幼稚園的小朋友,每看到一胎化的彼岸,我們也不相上下‧
義大醫院,地點較偏僻,不在人多的都會區,可能不賺錢,但造福了附近的居民,順道去看叔婆老人家,九年不見,75歲糖尿病,坐輪椅,由外傭照顧著,假日沒人回去陪伴,看到我們夫婦及老三,眼眶泛紅,眼裡訴說著孤單,他由義大照護,鄉下的確需要這類醫院,願衛生局能感受到城鄉的需要與差別‧
我感觸很深,雖主日天沒望彌撒,但也做了有意義的探望老人‧
義大醫院,地點較偏僻,不在人多的都會區,可能不賺錢,但造福了附近的居民,順道去看叔婆老人家,九年不見,75歲糖尿病,坐輪椅,由外傭照顧著,假日沒人回去陪伴,看到我們夫婦及老三,眼眶泛紅,眼裡訴說著孤單,他由義大照護,鄉下的確需要這類醫院,願衛生局能感受到城鄉的需要與差別‧
我感觸很深,雖主日天沒望彌撒,但也做了有意義的探望老人‧
2012年9月7日 星期五
專題整合製作注意事項
專題要繳的事項
專題名稱
專題資料夾
database 例 x.sql , y.sql
基本操作手冊 -- help.doc
1.安裝程序
2.專案放置位址和資料庫匯入
3.專案首頁啟動方法和基本流程操作
安裝需要軟體和伺服器 wamp serve Tomcat server JRe1.6
系統架構圖 x.jpg
專題名稱
專題資料夾
database 例 x.sql , y.sql
基本操作手冊 -- help.doc
1.安裝程序
2.專案放置位址和資料庫匯入
3.專案首頁啟動方法和基本流程操作
安裝需要軟體和伺服器 wamp serve Tomcat server JRe1.6
系統架構圖 x.jpg
亂碼
這是雨宏的FB留言
今天遇到response.sendRedirect("goo ds.jsp?id="+strId+"&name="+str Name); 其中strName為中文字串, 結果對方接到的是一串亂碼... 我參數接有用String(request.getParame ter("name").getBytes("ISO-8859 -1"), "utf-8"), 怎麼想都想不透...
回家前經阿志提醒, 要加urlencoder, 果然現在修改後就正常了~~ ^O^
response.sendRedirect("goods.j sp?id="+strId+"&name="+URLEnco der.encode(name,"UTF-8"));
解釋
使用两次编碼的過程相當
输出为:
%E6%B5%8B%E8%AF%95
%25E6%25B5%258B%25E8%25AF%2595
%E6%B5%8B%E8%AF%95
测试
第一次编码后将汉字编码为%和字母数字的格式,而第二次编码的时候是对%字母数字进行编码,虽然解码的时候使用的是ISO-8859-1,但是对于%和字母数字而言用ISO-8859-1和UTF-8解码出来的是一样的,此时就回到了汉字被编码过一次的字符串了,当再次进行解码的时候使用UTF-8就回将它转会汉字。
今天遇到response.sendRedirect("goo
回家前經阿志提醒, 要加urlencoder, 果然現在修改後就正常了~~ ^O^
response.sendRedirect("goods.j
解釋
使用两次编碼的過程相當
String name=java.net.URLEncoder.encode("测试", "UTF-8"); System.out.println(name); name=java.net.URLEncoder.encode(name,"UTF-8"); System.out.println(name); name=java.net.URLDecoder.decode(name, "UTF-8"); System.out.println(name); System.out.println(java.net.URLDecoder.decode(name, "UTF-8"));
输出为:
%E6%B5%8B%E8%AF%95
%25E6%25B5%258B%25E8%25AF%2595
%E6%B5%8B%E8%AF%95
测试
第一次编码后将汉字编码为%和字母数字的格式,而第二次编码的时候是对%字母数字进行编码,虽然解码的时候使用的是ISO-8859-1,但是对于%和字母数字而言用ISO-8859-1和UTF-8解码出来的是一样的,此时就回到了汉字被编码过一次的字符串了,当再次进行解码的时候使用UTF-8就回将它转会汉字。
2012年9月6日 星期四
prev().attr('id') jquery example
為增加一列在sum row(#rs1) 之上 ,data row 之下,使用prev()找前一列的id 以便控制
。用id的編號做會員商品管理
var tr_id=$('#rs1').prev().attr('id');
alert(tr_id);
var i=0;
if (tr_id=="rh") //記得need ""
{
i=1;
alert("123");
}
else
{
i=tr_id.substring(2);
i++;
}
9/5進度記錄
。用id的編號做會員商品管理
var tr_id=$('#rs1').prev().attr('id');
alert(tr_id);
var i=0;
if (tr_id=="rh") //記得need ""
{
i=1;
alert("123");
}
else
{
i=tr_id.substring(2);
i++;
}
9/5進度記錄
$('#my_table > tbody > tr').eq(i-1).after(html);
以上為增加一列,eq()表示在第幾個tr
2012年9月4日 星期二
驗證
http://lzf0514.iteye.com/blog/724244
之前遍查不到validator的addMethod用法 官方的文件也不是說的很明白 由於我需要用正規化來做一些原本validator沒有的驗証規則
所以只能用addMethod的方法 大家可以參考下列的用法 用addMethod新增一個規則後 你可以自訂要針對這個規則所做出反應跟自訂錯誤訊息! 如果要套用這個規則,可以在html 元件中,加上class="自訂規則名" 即可套用了! 我研究的沒有很透徹啦..但可以用就好..
之前遍查不到validator的addMethod用法 官方的文件也不是說的很明白 由於我需要用正規化來做一些原本validator沒有的驗証規則
所以只能用addMethod的方法 大家可以參考下列的用法 用addMethod新增一個規則後 你可以自訂要針對這個規則所做出反應跟自訂錯誤訊息! 如果要套用這個規則,可以在html 元件中,加上class="自訂規則名" 即可套用了! 我研究的沒有很透徹啦..但可以用就好..
- < script type = " text/javascript " >
- $ ( document ) . ready ( function ( e ) {
- jQuery . validator . addMethod ( " test " , function ( value , element ) { //設增一個自訂規則test
- var result = this . optional ( element ) || value . length >= 5 && / d / . test ( value ) && / [a-zA-Z] /i . test ( value ) ;
- //用正規化表示式去設定validator所沒有的驗証規則
- if ( ! result ){
- element . value = "" ; //控制套用自訂規則的元件的程式碼可以在此設定
- }
- return result ;
- } , " 自訂錯誤訊息.<br> " ) ;
- }) ;
- < / script> <form> <input type="text" id="t1" class="test"> < / form >
- --------------------
- $(function ()
{
if (jQuery.validator)
{
//字母数字
jQuery.validator.addMethod("alnum", function (value, element)
{
return this.optional(element) || /^[a-zA-Z0-9]+$/.test(value);
}, "只能包括英文字母和数字");
// 手机号码验证
jQuery.validator.addMethod("cellphone", function (value, element)
{
var length = value.length;
return this.optional(element) || (length == 11 && /^(1\d{10})$/.test(value));
}, "请正确填写手机号码");
// 电话号码验证
jQuery.validator.addMethod("telephone", function (value, element)
{
var tel = /^(\d{3,4}-?)?\d{7,9}$/g;
return this.optional(element) || (tel.test(value));
}, "请正确填写电话号码");
// 邮政编码验证
jQuery.validator.addMethod("zipcode", function (value, element)
{
var tel = /^[0-9]{6}$/;
return this.optional(element) || (tel.test(value));
}, "请正确填写邮政编码");
// 汉字
jQuery.validator.addMethod("chcharacter", function (value, element)
{
var tel = /^[\u4e00-\u9fa5]+$/;
return this.optional(element) || (tel.test(value));
}, "请输入汉字");
// 汉字
jQuery.validator.addMethod("qq", function (value, element)
{
var tel = /^[1-9][0-9]{4,}$/;
return this.optional(element) || (tel.test(value));
}, "请输入正确的QQ");
// 用户名
jQuery.validator.addMethod("username", function (value, element)
{
return this.optional(element) || /^[a-zA-Z][a-zA-Z0-9_]+$/.test(value);
}, "用户名格式不正确");
}
});
jquery jsp y mysql 實作
相關設定
mysql ---使用wamp
tomcat---下載安裝
java--j2se jdk
jquery.js放網頁資料夾
mysql-connector-java-3.0.17-ga-bin.jar
mysql-connector-java-3.1.10-bin-g.jar
以上兩jar檔放入C:\Program Files\Apache Software Foundation\Tomcat 5.5\common\lib
//C:\Program Files\Apache Software Foundation\Tomcat 5.5\webapps\ROOT\WEB-INF
用javabean smart--把WEB-INF copy到網頁資料夾,新增classes資料夾放入com-jspsmart-upload-File.class+Files.class+Request.class+SmartUpload.class+SmartUploadException.class
//
資料連結設定檔querydata.jsp code 如下
<%@ page contentType="text/html; charset=utf-8" language="java" import="java.sql.*" errorPage="" %>
<%@page import="java.util.*"%>
<%!
public String[][] querydatafun(String databasename,String strsql)
{
ResultSet rs=null;
String[][] resultdata=null;
try
{
Class.forName("org.gjt.mm.mysql.Driver");
}
catch(Exception e)
{
//out.print("資料庫驅動程式失敗");
}
try
{
Connection myconn=DriverManager.getConnection("jdbc:mysql://localhost/"+databasename+"?useUnicode=true&characterEncoding=utf-8","root","");
Statement mysmt=myconn.createStatement();
rs=mysmt.executeQuery(strsql);
int fieldcount=rs.getMetaData().getColumnCount();
//out.print("總欄位數:"+fieldcount+"<p>");
for(int i=0;i<fieldcount;i++)
{
//out.print(rs.getMetaData().getColumnName(i+1)+"<p>");
}
rs.first();
rs.last();
int rowcount=rs.getRow();
//out.print("總記錄數:"+rowcount+"<p>");
if(rowcount==0)
{
resultdata=new String[0][0];
}
else
{
resultdata=new String[rowcount][fieldcount];
rs.beforeFirst();
int j=0;
while(rs.next())
{
for(int i=0;i<fieldcount;i++)
{
resultdata[j][i]=rs.getString(i+1);
}
j++;
}
rs.close();
myconn.close();
}
}
catch(SQLException er)
{
//out.print("資料庫管理系統無法啟動");
}
return resultdata;
}
%>
資料送入檔jtestdata.jsp code 如下
以上只做到按產品圖跑出table以便輸入定購數量
//http://www.9lessons.info/2008/09/jsp-login-page-to-connect-mysql-atabase.html
//http://ithelp.ithome.com.tw/question/10033993
mysql ---使用wamp
tomcat---下載安裝
java--j2se jdk
jquery.js放網頁資料夾
mysql-connector-java-3.0.17-ga-bin.jar
mysql-connector-java-3.1.10-bin-g.jar
以上兩jar檔放入C:\Program Files\Apache Software Foundation\Tomcat 5.5\common\lib
//C:\Program Files\Apache Software Foundation\Tomcat 5.5\webapps\ROOT\WEB-INF
用javabean smart--把WEB-INF copy到網頁資料夾,新增classes資料夾放入com-jspsmart-upload-File.class+Files.class+Request.class+SmartUpload.class+SmartUploadException.class
//
資料連結設定檔querydata.jsp code 如下
<%@ page contentType="text/html; charset=utf-8" language="java" import="java.sql.*" errorPage="" %>
<%@page import="java.util.*"%>
<%!
public String[][] querydatafun(String databasename,String strsql)
{
ResultSet rs=null;
String[][] resultdata=null;
try
{
Class.forName("org.gjt.mm.mysql.Driver");
}
catch(Exception e)
{
//out.print("資料庫驅動程式失敗");
}
try
{
Connection myconn=DriverManager.getConnection("jdbc:mysql://localhost/"+databasename+"?useUnicode=true&characterEncoding=utf-8","root","");
Statement mysmt=myconn.createStatement();
rs=mysmt.executeQuery(strsql);
int fieldcount=rs.getMetaData().getColumnCount();
//out.print("總欄位數:"+fieldcount+"<p>");
for(int i=0;i<fieldcount;i++)
{
//out.print(rs.getMetaData().getColumnName(i+1)+"<p>");
}
rs.first();
rs.last();
int rowcount=rs.getRow();
//out.print("總記錄數:"+rowcount+"<p>");
if(rowcount==0)
{
resultdata=new String[0][0];
}
else
{
resultdata=new String[rowcount][fieldcount];
rs.beforeFirst();
int j=0;
while(rs.next())
{
for(int i=0;i<fieldcount;i++)
{
resultdata[j][i]=rs.getString(i+1);
}
j++;
}
rs.close();
myconn.close();
}
}
catch(SQLException er)
{
//out.print("資料庫管理系統無法啟動");
}
return resultdata;
}
%>
資料送入檔jtestdata.jsp code 如下
<%@ page contentType="text/html; charset=utf-8" language="java" import="java.sql.*" errorPage="" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<%@include file="jtestdata.jsp"%>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>無標題文件</title>
</head>
<script type="text/javascript" src="./jquery.js"></script>
<script language="javascript" type="text/javascript" >
$(document).ready(function()
{
var htmlstr2=
var table=document.getElementById("tb1");
$("table img").mousedown(function()
{
var item_no=$(this).attr('id');//編號
var altstr=$(this).attr('alt');
var n=altstr.indexOf(",");
var storena=altstr.substring(0,n);//商家名
var itemstr=$(this).attr('title');
n=itemstr.indexOf(":");
var item_na=itemstr.substring(0,n);//商品名
var price=itemstr.substring(n+1,n+3);//單價
var htmlstr1='<table width="300" border="2"><tr><td width="180" >編號:'+item_no+'</td><td width="120" >商家:'+storena+'</td></tr><tr><td>商品:'+item_na+'</td><td>單價:'+price+'</td></tr><tr><td>數量:<input type="text" id="qty" size="8"/></td><td ><input type="button" id="bt1" value="確定" /></td></tr></table>';
$('#div1').html(htmlstr1);
});
});
</script>
<body>
<table id="tb1" width="100%" height="100%" border="1" align="center" cellspacing="1" >
<% for(int i=0;i<4;i++){ %>
<tr><% for(int j=1;j<6;j++){
int s=j+i*5; String mtr=Menu_item[s];
//out.print(mtr);
//out.print(s);
String k=store_no+"_"+s;%>
<td width="140" height="120" align="center" >
<a href="javascript:;">
<img id="<%=k%>" src="./pic/<%=k%>.jpg" width="100" height="60" title="<%=mtr%>元" border="1" alt="<%=store_na+","+k%>"/>
</a></td> <% } %>
</tr> <% } %>
</table>
<div id="div1">
</div>
<div id="div2">
<table id=""
</div>
</body>
</html>
以上只做到按產品圖跑出table以便輸入定購數量
//http://www.9lessons.info/2008/09/jsp-login-page-to-connect-mysql-atabase.html
//http://ithelp.ithome.com.tw/question/10033993
實作(1)
1.資料庫規化
databasename:lunch
table:
基本資料表
class_n: 班級 名稱
field:no,班級編號,班級名稱
store:商家名稱
field:no,商家名稱,商家編號,電話住址
menu:菜單
field:id,store,item,menu_no,price
menber:學員名冊
id,seat_no,name,gender,job,tel,email,address,interest1,interest2,remark,create_date,password
master:控管人員
ID,username,password,班級編號
交易變動檔
order:記錄檔
lo_id,class_seat_no,lo_store_no,lo_item_no,price,lo_qnt,lo_date,like,paid
以上須定欄位長度,型别,主key,編碼
like field to control menber's selected record
paid to contro paid or not
2.網頁架構
index----前台---瀏覽商品
定購商品 ---會員登入
--- 非會員
後台---會員管理
商家管理
商品管理
優會通告管理
客訴管理
databasename:lunch
table:
基本資料表
class_n: 班級 名稱
field:no,班級編號,班級名稱
store:商家名稱
field:no,商家名稱,商家編號,電話住址
menu:菜單
field:id,store,item,menu_no,price
menber:學員名冊
id,seat_no,name,gender,job,tel,email,address,interest1,interest2,remark,create_date,password
master:控管人員
ID,username,password,班級編號
交易變動檔
order:記錄檔
lo_id,class_seat_no,lo_store_no,lo_item_no,price,lo_qnt,lo_date,like,paid
以上須定欄位長度,型别,主key,編碼
like field to control menber's selected record
paid to contro paid or not
2.網頁架構
index----前台---瀏覽商品
定購商品 ---會員登入
--- 非會員
後台---會員管理
商家管理
商品管理
優會通告管理
客訴管理
規畫(1)
Td:id編號方式:tb2的t11-t15,t21-t25,t31-t35,t41-t45
.照片編號及品名編號:menu.(store_no+_+menu_no)
Title值:menu.(store_no+_+menu_no+”,”+menu.item+”,”menu.price+”元”)
Img.mousedown
1.下方跑出訂購單
2.填好數量,按確認後送到餐車
3.再送入交易檔
訂購單
編號:
|
品名編號
|
商家:
|
button.value
|
品名:
|
title
|
單價:
|
title
|
數量:
|
由客戶填
|
總價:
|
單價*數量
|
確認
|
|||
餐車
編號
|
商家
|
品名
|
單價
|
數量
|
總價
|
取消
|
送出訂單
|
||||||
data[i][j]
Td:id編號方式:tb2的t11-t15,t21-t25,t31-t35,t41-t45
table
id="tb2"
<td id="t11"
width="140" height="120" align="center" ><a
href="javascript:;"><img id="1001_1" src="pic/1001_1.jpg"
width="100" height="60" title="香雞排飯55元"
border="1" alt="品名編號1001_1"/></a></td>
2012年9月1日 星期六
挫折
讀書的時候要思考書籍內容的合理性與邏輯性.
透過「寫作」來整理觀念,目的就在於「強迫思考」,要能寫出有料的東西一定是經過深思熟慮的,自己思考、辯證過的東西一定比你光看書還能深刻記憶,過程即便辛苦,但內心感受踏實‧
這是我在尋找資料時,看到的一句話,曾幾何時,我讀書時已淪為流覽而不太思考‧被說程度不夠不要寫太大的程式‧心中很不服氣,難道因年紀大,記憶力減退,比別人花更多時間去探討,卻事半功倍,而無法實現想要完成的議題‧絕不放棄,即使成為結訓後的家庭作業,也要去克服‧
透過「寫作」來整理觀念,目的就在於「強迫思考」,要能寫出有料的東西一定是經過深思熟慮的,自己思考、辯證過的東西一定比你光看書還能深刻記憶,過程即便辛苦,但內心感受踏實‧
這是我在尋找資料時,看到的一句話,曾幾何時,我讀書時已淪為流覽而不太思考‧被說程度不夠不要寫太大的程式‧心中很不服氣,難道因年紀大,記憶力減退,比別人花更多時間去探討,卻事半功倍,而無法實現想要完成的議題‧絕不放棄,即使成為結訓後的家庭作業,也要去克服‧
2012年8月31日 星期五
jsp 二維陣列
int[] a=new int[5];
String str=new String[x.length];
jsp中要指定位址數
今天要認栽了,程度不夠,寫起程式,覺得不順手
希望能拿作為消遣的工具
有點不開心
老師認為我野心太大
String str=new String[x.length];
jsp中要指定位址數
今天要認栽了,程度不夠,寫起程式,覺得不順手
希望能拿作為消遣的工具
有點不開心
老師認為我野心太大
2012年8月29日 星期三
jquery 靜態取給值,屬性取給值
例子如下
</head>
<script language="javascript" src="jquery-1.8.0.js"></script>
<script language="javascript">
$(document).ready(function()
{
$("#a1").click(function()
{
//1.取innerHTML值
//var inner=$("#a1").text();
//alert(inner);
//2.給innerHTML值
//$("#a1").text("關閉");
//1.取attr屬性值
//var atr=$("#a1").attr("href");
//alert(atr);
//1.給attr屬性值,代表集合,可以是兩個以上屬性指派,用,點隔開
$("#a1").attr({href:'http://www.yahoo.com.tw'});
});
});
</script>
<body>
<a id="a1" href="javascript:;" >開始</a>
</body>
</html>
css position設定
relative 相對於normal 即原來放的位置
z-index圖層設定,數字大者在最上層
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>無標題文件</title>
</head>
<style type="text/css">
div { border:1px solid black; }
.infront {
background-color:#ff9900;
width:100px;
height: 100px;
position:relative;
top:80px;
left:20px;
z-index: 2;
}
.behind {
background-color:#eeeeee;
width:100px;
height: 100px;
position:relative;
top:-30px;
left:20px;
z-index: 1;
}
</style>
<body>
<div class="infront">
In front
</div>
<div class="behind">
Behind
</div>
</body>
</html>
原位置
改變後結果
z-index圖層設定,數字大者在最上層
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>無標題文件</title>
</head>
<style type="text/css">
div { border:1px solid black; }
.infront {
background-color:#ff9900;
width:100px;
height: 100px;
position:relative;
top:80px;
left:20px;
z-index: 2;
}
.behind {
background-color:#eeeeee;
width:100px;
height: 100px;
position:relative;
top:-30px;
left:20px;
z-index: 1;
}
</style>
<body>
<div class="infront">
In front
</div>
<div class="behind">
Behind
</div>
</body>
</html>
原位置
In front
Behind
改變後結果
In front
Behind
jquery .data() 的用法
此方法 讓DOM元素保存資料,以便參考引用
.data("名稱",( key: value ,key2:value2))
舉例 參考http://api.jquery.com/data/
.data("test", { first: 16, last: "pizza!" });
.data("名稱",( key: value ,key2:value2))
舉例 參考http://api.jquery.com/data/
.data("test", { first: 16, last: "pizza!" });
<!DOCTYPE html>
<html>
<head>
<style>
div { color:blue; }
span { color:red; }
</style>
<script src="http://code.jquery.com/jquery-latest.js"></script>
</head>
<body>
<div>
The values stored were
<span></span>
and
<span></span>
</div>
<script>
$("div").data("test", { first: 16, last: "pizza!" });
$("span:first").text($("div").data("test").first);
$("span:last").text($("div").data("test").last);
</script>
</body>
</html>
The values stored were 16 and pizza!
2012年8月28日 星期二
radio的取值練習
!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>無標題文件</title>
</head>
<script language="javascript" src="jquery-1.8.0.js" ></script>
<script language="javascript">
$(document).ready(function()
{
$("#dv1").hide();
$("#dv1").val();
$("#t1").click(function()
{
var k1=$(this).offset();
var x=k1.left;
var y=k1.top+22;
$("#dv1").css({"position":"absolute","left":x+"px","top":y+"px"}).show();
});
$("#a1").click(function()
{
$("#dv1").hide();
});
$("#sure").click(function()
{
var data=$('[name="rd1"]:checked').val();
$("#t1").val(data);
$("#dv1").hide();
});
});
</script>
<body>
<form method="post" name="f1" id="f1">
出生地:
<input id="t1" name="t1" type="text" size="20" />
<input id="s1" name="s1" type="submit" value="傳送" />
</form>
<div id="dv1" style="width:300px;height:210px;background-color:#3FC">
<table width="300" height="200" border="2">
<tr>
<td align="right" height="10">
<a id="a1" href="javascript:;" style="text-decoration:none">X</a>
</td>
</tr>
<tr>
<td height="170">
<input type="radio" id="rd1" name="rd1" value="台南市"/>台南市
<input type="radio" id="rd1" name="rd1" value="高雄市"/>高雄市
<input type="radio" id="rd1" name="rd1" value="台中市"/>台中市
<p>
<input type="button" id="sure" name="sure" value="確認" />
</td>
</tr>
</table>
</div>
</body>
</html>
練習find() ,contains(),filter() 整體程式碼如下:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>contains</title>
</head>
<style type="text/css">
.color{
background-color:#F9F;
}
.color2{
background-color:#FFF;
}
.pdata{
background-color:#FF0;
}
</style>
<script language="javascript" src="jquery-1.8.0.js" ></script>
<script language="javascript">
$(document).ready(function()
{
$("#dv1").hide(100);
$("#tb1 thead tr").addClass("color");
$("#tb1 tbody tr").mouseover(function()
{
$(this).addClass("pdata");
});
$("#tb1 tbody tr").mouseleave(function()
{
$(this).removeClass("pdata");
});
$("#tb1 tbody tr").click(function()
{
$("#dv1").hide(100);
var t1=$(this).find("td").eq(0).text();
var t2=$(this).find("td").eq(1).text();
var t3=$(this).find("td").eq(2).text();
var t4=$(this).find("td").eq(3).text();
var t5=$(this).find("td").eq(4).text();
$("#t1").val(t1);
$("#t2").val(t2);
$("#t3").val(t3);
$("#t4").val(t4);
$("#t5").val(t5);
var x=$(this).offset().left;
var y=$(this).offset().top;
$("#dv1").show(500);
$("#dv1").css('position','absolute');
$("#dv1").css('left',x+50);
$("#dv1").css('top',y);
});
$("#a1").click(function()
{
$("#t1").val("");
$("#t2").val("");
$("#t3").val("");
$("#t4").val("");
$("#t5").val("");
$("#tb1 tbody tr").css('background-color','');
var id=$("#t6").val();
alert(id);
var qtr=$("#tb1 tbody tr:contains('"+id+"')");
qtr.css('background-color','#009999');
alert(qtr.find("td").length);
for(var i=0;i<qtr.find("td").length;i++){
$("#tb2").find("input").eq(i).val(qtr.find("td").eq(i).text());
}
$("#tb1 tbody tr").hide().filter(":contains('"+id+"')").show();
/*
var qtd=$("#tb1 tbody tr td:contains('"+id+"')");
$("#tb1 tbody tr:contains('"+id+"')").css('background-color','#009999');
$("#t1").val( qtd.text());
$("#t2").val( qtd.next().text());
alert(qtd.next().text());
$("#t3").val($("#tb1 tbody tr:contains('"+id+"')").next().next().text());
$("#t4").val($("#tb1 tbody tr:contains('"+id+"')").next().next().next().text());
$("#t5").val($("#tb1 tbody tr:contains('"+id+"')").next().next().next().next().text());*/
});
$("#a2").click(function()
{
var d1=parseInt($("#sel1").val());
var d2=parseInt($("#sel2").val());
var d3=$("#cont").val();
//alert(d1);
switch(d1)
{
case 5:
switch(d2)
{
case 1:
var len=$("#tb1 tbody tr").length;
for (var i=0;i<len;i++)
{
var t7=$("#tb1 tbody tr:eq("+i+")").find("td").eq(4).text();
if(t7>d3)
{
$("#tb1 tbody tr:eq("+i+")").show();
}
else
{
$("#tb1 tbody tr:eq("+i+")").hide();
}
}
break;
case 2:
var len=$("#tb1 tbody tr").length;
for (var i=0;i<len;i++)
{
var t7=$("#tb1 tbody tr:eq("+i+")").find("td").eq(4).text();
if(t7<d3)
{
$("#tb1 tbody tr:eq("+i+")").show();
}
else
{
$("#tb1 tbody tr:eq("+i+")").hide();
}
}
break;
case 3:
$("#tb1 tbody tr").hide();
$("#tb1 tbody tr").filter(":contains('"+d3+"')").show();
break;
case 4:
var len=$("#tb1 tbody tr").length;
for (var i=0;i<len;i++)
{
var t7=$("#tb1 tbody tr:eq("+i+")").find("td").eq(4).text();
if(t7>=d3)
{
$("#tb1 tbody tr:eq("+i+")").show();
}
else
{
$("#tb1 tbody tr:eq("+i+")").hide();
}
}
break;
case 5:
var len=$("#tb1 tbody tr").length;
for (var i=0;i<len;i++)
{
var t7=$("#tb1 tbody tr:eq("+i+")").find("td").eq(4).text();
if(t7<=d3)
{
$("#tb1 tbody tr:eq("+i+")").show();
}
else
{
$("#tb1 tbody tr:eq("+i+")").hide();
}
}
break;
}
break;
default:
alert("請選價格");
}
});
});
function fun1()
{
location.reload();
}
</script>
<body >
<div id="dv2" >
<table id="tb1" width="600" border="2">
<thead>
<tr>
<td width="120" >編號</td>
<td width="120" >書名</td>
<td width="120" >作者</td>
<td width="120" >出版社</td>
<td width="120" >價格</td>
</tr>
</thead>
<tbody>
<tr>
<td>b1001</td>
<td>java</td>
<td>小明</td>
<td>文魁</td>
<td>300</td>
</tr>
<tr>
<td>b1002</td>
<td>c++</td>
<td>小張</td>
<td>基峯</td>
<td>400</td>
</tr>
<tr>
<td>b1003</td>
<td>Delphi</td>
<td>小玲</td>
<td>知城</td>
<td>250</td>
</tr>
<tr>
<td>b1004</td>
<td>Jbuilder</td>
<td>小張</td>
<td>松崗</td>
<td>600</td>
</tr>
</tbody>
</table>
</div>
<p><p>
<div id="dv1" style="background-image:url(image/bg2.jpg);width:600px" >
<form id="f1" >
<table id="tb2" width="600" border="2">
<tr>
<td width="81">編號 </td>
<td width="501"><input id="t1" name="t1" type="text" size="30" /></td>
</tr>
<tr>
<td>書名</td>
<td><input id="t2" name="t2" type="text" size="30" /></td>
</tr>
<tr>
<td>作者</td>
<td><input id="t3" name="t3" type="text" size="30" /></td>
</tr>
<tr>
<td>出版社</td>
<td><input id="t4" name="t4" type="text" size="30" /></td>
</tr>
<tr>
<td>價格</td>
<td><input id="t5" name="t5" type="text" size="30" /></td>
</tr>
<tr>
<td> </td>
<td> </td>
</tr>
<tr>
<td>
<input type="submit" name="s1" value="確認" />
</td>
<td>
<input type="reset" name="s2" value="清除" />
<input type="button" name="bt3" value="關閉" onclick="fun1()" />
</td>
</tr>
<tr>
<td>查詢編號</td>
<td><input id="t6" name="t6" type="text" size="30" />
<a id="a1" href="javascript:;" >送出查詢</a></td>
</tr>
</table>
</form>
<div id="dv3">
查詢價格
<select name="sel1" id="sel1" >
<option value="1">編號</option>
<option value="2">書名</option>
<option value="3">作者</option>
<option value="4">出版社</option>
<option value="5">價格</option>
</select>
內容
<select name="sel2" id="sel2">
<option value="1">大於</option>
<option value="2">小於</option>
<option value="3">等於</option>
<option value="4">大於等於</option>
<option value="5">小於等於</option>
</select>
<input id="cont" name="cont" type="text" size="20" />
<a id="a2" href="javascript:;" >查詢</a>
</div>
</div>
</body>
</html>
訂閱:
意見 (Atom)