![]() ![]() ![]() ![]() |
|||||
|
|||||
樓主 Merrick ![]()
![]() |
最近正在學習寫網頁, 目前碰到一個問題, 請大家先看圖 http://ppt.cc/UNYL 就是選完日期之後還要按查詢按鈕, 才會產生資料在下面的欄位之中, 不知道有沒有語法可以在我選完日期之後就直接產生資料, 不用經過再按查詢按鈕這個動作, 我是有想到使用onchange,但是毫無效果, 以下是我目前的寫法,請大家參考並指點。 這是產生日期的語法: 前面還會include calendar.inc這個月曆 而且若是將 onchange="Do_Query('v') 改為 onchange="alert( '請再檢查資料是否正確')"時, 當我從鍵盤填完值之後確實會出現alert( '請再檢查資料是否正確'), 若是用滑鼠選完日期則不會執行onchange的動作。 主要是想問有沒有辦法可以直接執行Do_Query('v')這個函數, 而不用再經過滑鼠點選這動作,請各位大大指點。
搜尋相關Tags的文章:
[ onchang ] ,
本篇文章發表於2013-12-02 13:20 |
1樓 |
試試onblur 事件(失去焦點時發生)
http://www.w3school.com.cn/htmldom/event_onblur.asp
本篇文章回覆於2013-12-02 14:15
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔-- |
2樓
作者回應
Merrick ![]() |
onblur、onfocus、onchange都試過了,
都是一樣還無效果。
本篇文章回覆於2013-12-02 14:26
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔-- |
3樓 |
Do_Query函數只有改變document.criteria.h_QryFlag.value = "V"的值?
alert放在這函數底下有跑進去嗎?如果在這函數加上Trigger click事件是不是你想要的效果? document.getElementById('btnSearch').click()
本篇文章回覆於2013-12-02 15:00
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔-- |
4樓 |
我試過了 可能有幾個錯誤
你的onchange只有一個" 少了一個 再來就是你的Do_Query裡面 要設定值的時候,物件沒取到 通常我都會設定幾個alert看看有沒有取到物件 我這邊是用document.all.h_QryFlag1來取得物件
本篇文章回覆於2013-12-02 15:12
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔-- |
5樓
作者回應
Merrick ![]() |
凱爾大您好,
我暫時將function改成以下這種 function Do_Query(f_str) { document.getElementById('h_dateto').click() ; document.criteria.h_QryFlag.value = "V"; alert( '請再檢查資料是否正確'); } alert放在這函數底下有跑進去,會跑出alert的視窗, 但是底下日期依然不會有所改變,還是需要執行按鈕,才會進一步動作。
本篇文章回覆於2013-12-02 15:34
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔-- |
6樓
作者回應
Merrick ![]() |
各位大大您們好,
我照著步驟去做, alert的確有跑進來, 而且值也有讀進來, 請看圖檔 http://ppt.cc/D0nE 但是在ALL這個欄位依然沒有進行LOAD的動作,還是要加上按扭動作才可以。
本篇文章回覆於2013-12-02 16:03
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔-- |
7樓 |
all不是欄位.
document.all.h_QryFlag1.value 文件document中所有物件all中的某個物件ID叫做h_QryFlag1的物件 你要操控一個元件的value <input type=text id=h_QryFlag1 > 則用document.all.h_QryFlag1.value
本篇文章回覆於2013-12-02 16:43
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔-- |
8樓
作者回應
Merrick ![]() |
阿健大大您好,
抱歉我說得不清楚, 我指得ALL是指圖中的第三個框所顯示的<ALL>框框, 我期望的結果是當我日期輸入完之後, 不需要執行按鈕的動作,則時間之內的資料都會自動在圖中的<ALL>框框秀出來, 目前看來Do_Query函數的確有執行到,而且參數值也有傳到函數裡面, 但時間之內的資料仍然不會自動秀出來,還是要加上執行按鈕的動作,才有辦法。
本篇文章回覆於2013-12-02 16:55
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔-- |
9樓 |
看來跟伺服器端的語言比較有關了,能問你是用什麼語言開發的嗎?
要不要再貼完整一點的Code出來
本篇文章回覆於2013-12-02 17:54
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔-- |
10樓
作者回應
Merrick ![]() |
各位大大好,
剛剛用Response.Write(TEST:<%=mDateto%>), 發現是日期沒有送進去做查詢動作, 不知道為什麼ONCHANGE值不會把日期送進去做查詢 ,但ONCLICK就有把日期送進去做查詢 請問如何改善?
本篇文章回覆於2013-12-02 18:16
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔-- |
11樓 |
你的程式碼蠻亂的...我刪減掉一些程式碼
你點查詢後其實表單應該有Submit的動作,而你onchange後沒有Submit當然不會有值 參考看看:
本篇文章回覆於2013-12-02 23:09
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔-- |
12樓
作者回應
Merrick ![]() |
感謝凱爾大大的解釋,
所以不管怎樣都要有Submit的動作才能有送出值嚕, 有語法可以自動將值submit出去嗎?
本篇文章回覆於2013-12-03 08:58
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔-- |
13樓 |
你可以用Ajax的方式去動態改變select list的選項,但這又是另一個方向了
要初學的話,可以試試我早年寫ASP的方式,將select資料塞到JavaScript的陣列 不管click或onchange都去改變select list的項目 但使用請小心...資料量大的話這樣效率蠻差的...自己在試試看囉^^"
本篇文章回覆於2013-12-03 09:36
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔-- |
14樓
作者回應
Merrick ![]() |
各位大大好,
我剛剛有找一下資料, 我再加上document.criteria.submit(); 資料就可以Submit出去, 不過又有一個問題產生, 就是我必須手動輸入值才會觸發, 若是用js月曆給值就無法觸發, 請任何語法可以判斷這種情況嗎?
本篇文章回覆於2013-12-03 09:57
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔-- |
15樓 |
你的問題我之前也遇到過
http://www.blueshop.com.tw/board/show.asp?subcde=BRD20121113135627FLB&fumcde=BRD20121113135627FLB 我的情況是onclick觸發js日曆 在觸發完後要做計算 最後的方法是 在onpropertychange、oninput和onchange都呼叫計算的function 雖然火狐的效果有些不盡人意 提供給你參考看看
本篇文章回覆於2013-12-03 10:27
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔-- |
回覆 |
如要回應,請先登入. |