![]() ![]() ![]() ![]() |
|||||
|
|||||
樓主 tiger ![]()
![]() |
最近遇到一個問題,下拉式選單選擇後,如何在同頁得到所選的值,不必submit ,而且得到的值可以做sql語法的判別。 謝謝
本篇文章發表於2014-09-17 14:31
|
1樓 |
基本的觀念問題
ASP是主機端的程式,主機執行ASP後編譯成網頁原始碼送給客戶端瀏覽器 客戶端的操作基本上只能觸發script,因為script是客戶端的程式 這兩者不可能互相干涉 SQL只能在主機端操作,所以只能用ASP去控制,JS不能操作SQL 樓主想要的效果,可以用AJAX的方法達成 由JS去呼叫另一個ASP頁面,在該ASP中操做SQL,然後將回傳的結果用JS進行操作 另外下拉選單的值可以直接用value取得,例如
本篇文章回覆於2014-09-18 10:03
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔-- |
2樓
作者回應
tiger ![]() |
謝謝回覆
AJAX是甚麼呀?可以得到立即同頁網頁的值嗎? 大大所說的是這樣嗎? selectname=document.getElementById("selectID").value 就可以取得使用者所選的值 如果是想用年月日當下拉是選單 使用者如果選擇隨便一個下拉式選單,資料就會立即改變 如何做呀
本篇文章回覆於2014-09-18 13:51
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔-- |
3樓 |
AJAX是一種javascript的技術,由javascript去向主機端要資料,也就是去執行主機端的ASP並接收頁面原始碼做為回傳值
這樣開發者就能在不換頁、不重整的前提下,進行即時的查詢或是資料更新動作 當然這樣的技術是包含資安上的風險,所以請詳加考慮是否真有此必要,再使用這樣的技術 AJAX要如何使用? 請google吧,或是在小舖的搜尋中打上AJAX都應該能找到一堆範例 如果覺得javascript的AJAX很複雜,也可以用JQ,全都寫好只要將參數帶入便可 年月日分別都是下拉,隨便選一個就能立即改變資料? 每個下拉都設定onchange觸發相同的function function中抓取三個下拉的值組成日期,查詢,顯示結果
本篇文章回覆於2014-09-19 09:49
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔-- |
4樓
作者回應
tiger ![]() |
謝謝 我試試看
jquery 有這種function嗎
本篇文章回覆於2014-09-22 11:18
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔-- |
5樓
作者回應
tiger ![]() |
不好意思,一直沒時間試看看,今天試看看,結果arr不能印出來,表示下拉式選單的值沒收到,要如何解決呀?
謝謝大大 <select id="selectID" name="selectName" onchange="chgSelect();"> <option value='AAA'>3個A</option> <option value='BBB'>3個B</option> <option value='CCC'>3個C</option> </select> <script type="text/javascript"> <!-- function chgSelect(){ var arr; alert(document.getElementById("selectID").value); document.getElementById("selectID").value=arr.join(); } //--> </script> <% response.write arr %>
本篇文章回覆於2014-10-29 11:22
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔-- |
6樓 |
總覺得我第一篇的回覆你沒有好好看
ASP只會在網頁產生前和產生中運作 JS只會在網頁產生後運作 ASP不可能抓到和顯示還沒有被產生出來的JS的變數!!! 別再把兩者混為一談了!!! 如果是表單送出後要接收值 表單是post時用 Request.Form("selectName") 表單是get時用 Request.Querysting("selectName") 別再想著ASP去抓JS的變數!!!
本篇文章回覆於2014-10-30 10:30
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔-- |
7樓
作者回應
tiger ![]() |
謝謝回答 我了解了
那我的問題要如何解決呀 除了使用ajax外 我知道asp.net 有autopostback 但asp要如何做到呢 請迷路學長 幫忙一下 有範例讓小弟學習
本篇文章回覆於2014-10-30 11:26
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔-- |
8樓 |
除了AJAX之外,ASP在不送出表單的前提下取得JS的變數值進行處理?
就我所知那是"不可能的!!!" 辦不到的事情就是辦不到 就算我想幫忙也沒辦法 手上沒有ASP主機,憑印象大致寫個AJAX的簡易版範例 網頁部分"a.html" asp處理頁面"b.asp" 請把兩個頁面放在同一層目錄中 試著執行a.html看看
本篇文章回覆於2014-10-31 09:44
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔-- |
9樓
作者回應
tiger ![]() |
迷路兄
沒反應耶,沒捉到值
本篇文章回覆於2014-10-31 11:06
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔-- |
10樓 |
有1招是利用 frame
(iframe / frameset) 就是A頁面選擇下拉選單之後,用script去抓出〔所選的值〕 然後用Script把iframe的頁面,連結到B頁面(B頁面的網址附帶選單的參數) 例如B.asp?id=123 而B.asp就可以利用Request來取得ID值,再去做處理(A頁面不會有submit的行為,也不會換頁) (但實際上是另一個頁面在跑) 原理與Ajax大同小異
本篇文章回覆於2014-11-04 22:29
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔-- |
11樓
作者回應
tiger ![]() |
有範例可以參考嗎
謝謝
本篇文章回覆於2014-11-05 11:03
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔-- |
12樓 |
http://ant4js.blogspot.tw/2009/02/iframe.html
本篇文章回覆於2014-11-05 20:25
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔-- |
回覆 |
如要回應,請先登入. |