iT邦幫忙

0

asp 頁面自動刷新

asp

我做一個list頁面把資料庫的資料都列在網頁上,並想要隨時更新頁面狀態,所以
我在asp加入下面語法,5秒更新一次,但是畫面會一閃一閃的,請問有甚麼方法可以偵測資料庫有增加資料,又可以更新頁面不用一閃一閃的語法,謝謝!
我有查過ajax但我看不太懂..
meta http-equiv="refresh" content="5;URL=labkeylistusr.asp"
https://ithelp.ithome.com.tw/upload/images/20171122/20097057s6q6vNsDec.png

weiclin iT邦高手 4 級 ‧ 2017-11-22 19:07:54 檢舉
去把 ajax 看懂
mayyola iT邦新手 2 級 ‧ 2017-11-22 23:01:26 檢舉
請問有甚麼AJax的關鍵字可以搜尋 謝謝
weiclin iT邦高手 4 級 ‧ 2017-11-23 18:40:52 檢舉
MDN 裡面很多文件很不錯的, 多翻翻
https://developer.mozilla.org/zh-TW/docs/Web/Guide/AJAX/Getting_Started
0
fysh711426
iT邦研究生 4 級 ‧ 2017-11-22 18:36:24

Ajax 正解,需要將取資料的程式獨立,給此頁的 Ajax 呼叫。
/images/emoticon/emoticon35.gif

看更多先前的回應...收起先前的回應...
mayyola iT邦新手 2 級 ‧ 2017-11-22 23:01:13 檢舉

請問有甚麼AJax的關鍵字可以搜尋 謝謝

fysh711426 iT邦研究生 4 級 ‧ 2017-11-22 23:42:25 檢舉

http://awpluway.pixnet.net/blog/post/364195038-jquery%E4%B8%ADajax%E5%8F%83%E6%95%B8%E7%94%A8%E6%B3%95
這是 Ajax 最基本的形式,url 就放您寫的 asp 程式路徑,這支程式負責到資料庫讀取資料然後用這種形式回傳資料給 Ajax <%= xxx %>
success 負責接收回傳的資料,然後使用 JQuery 將資料顯示在畫面上 $("#output").html(result);
只需將 Ajax 配合計時器,就能達到即時更新不閃畫面的需求,
如果您回傳的資料結構很複雜的話,可以 Google 一下 Json 用法,這是目前 Ajax 最常使用的資料回傳格式。

$.ajax({
    type :"GET",
    url  : "xxx.asp",
    dataType: "text",
    success : function(result) {
        $("#output").html(result);
    }
})
mayyola iT邦新手 2 級 ‧ 2017-11-23 09:50:24 檢舉

所以應該是我再寫一個ajax+jquery+html網頁把labkeylistusr.asp帶入到url ?好難理解>"<

fysh711426 iT邦研究生 4 級 ‧ 2017-11-23 09:58:29 檢舉

對阿,您可以想像成主頁有一個區塊需要更新,而那個區塊是另外一支 asp 負責,
主頁去和 asp 取資料回來,更新在那個區塊上,
然後主頁不一定要用 html 也可以用 ajax+jquery+asp。

mayyola iT邦新手 2 級 ‧ 2017-11-24 12:42:16 檢舉

我剛剛試了F大跟B大的寫法,有些還是不太懂要如何透錯AJAX把labkeylistusr.asp的資料帶出來,語法如下:(大家是怎麼貼語法的,html好像預覽會看不到,只好貼圖)
下面這列不太懂 謝謝
success : function(result) {
$("#result").load('labkeylistusr.asp');
}

https://ithelp.ithome.com.tw/upload/images/20171124/20097057MQWlfjQ3TX.png

fysh711426 iT邦研究生 4 級 ‧ 2017-11-24 12:53:08 檢舉

您可以將程式改成以下,然後再 F12 下看看出來的是什麼。

success : function(result) {
    console.log(result);
}

然後這段的意思是將成功取回來的資料更新到網頁上。

<body>
    <div id="result"></div>
</body>
success : function(result) {
    $("#result").html(result);
}

貼語法 Ctrl+Alt+C 或編輯器第五顆按鈕。

mayyola iT邦新手 2 級 ‧ 2017-11-24 13:52:59 檢舉

感謝B大跟F大,已經可以了~謝謝!

fysh711426 iT邦研究生 4 級 ‧ 2017-11-24 14:12:13 檢舉

/images/emoticon/emoticon42.gif

mayyola iT邦新手 2 級 ‧ 2017-11-25 14:16:27 檢舉

不過我用IE跟Microsoft Edgex瀏覽器開會有亂碼的情形,chrome跟手機的瀏覽器就不會,有把dataType改成html 也不行..請問有遇過這情形嗎?

fysh711426 iT邦研究生 4 級 ‧ 2017-11-25 14:23:00 檢舉
mayyola iT邦新手 2 級 ‧ 2017-11-25 14:33:41 檢舉

我剛有試過 UTF-8 還是一樣..

fysh711426 iT邦研究生 4 級 ‧ 2017-11-25 14:47:46 檢舉

這樣要貼程式和亂碼情形讓大家看看

mayyola iT邦新手 2 級 ‧ 2017-11-25 15:06:24 檢舉

主要是see.html有問題(用jquery和ajax寫的網頁),labkeylistusr.asp是正常,主要是中文字

https://ithelp.ithome.com.tw/upload/images/20171125/20097057cmnznjCOip.png

<!DOCTYPE html>
<html>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>
<head>

<script>

$(function(){

setTimeout("myfunction()",0900)

});

function myfunction(){

$.ajax({
    type :"GET",
    url  : "labkeylistusr.asp",
    dataType: "text",
    success : function(result) {
        $("#result").html(result);
    }
})

setTimeout("myfunction()",0900);


}

</script>


<meta http-equiv="Content-Type" content="text/html; charset=big5">
<title>?芸??1</title>
</head>

<body>

<div id="result"></div>

</body>

</html>

fysh711426 iT邦研究生 4 級 ‧ 2017-11-25 15:09:28 檢舉

這裡嗎?

<meta http-equiv="Content-Type" content="text/html; charset=big5">

然後還要檢查 html 是不是用 utf-8 編碼的,
http://golazylife.com/2017/01/22/chrome-55-0%E7%89%88%E4%BB%A5%E5%BE%8C%E5%A6%82%E4%BD%95%E6%9B%B4%E6%94%B9%E7%B6%B2%E9%A0%81%E7%B7%A8%E7%A2%BC/
然後可以用 Chrome 測試一下編碼。

mayyola iT邦新手 2 級 ‧ 2017-11-25 15:15:58 檢舉

是的,但我改過 還是沒辦法..

fysh711426 iT邦研究生 4 級 ‧ 2017-11-25 15:20:48 檢舉

有可能檔案是用 big5 編碼,要將檔案重新編碼。

mayyola iT邦新手 2 級 ‧ 2017-11-25 16:37:03 檢舉

url : "labkeylistusr.asp" 這個檔用ie 或edge 開是正常,用ajax嵌入就不行了- -

fysh711426 iT邦研究生 4 級 ‧ 2017-11-25 16:51:39 檢舉

labkeylistusr.asp 檔可能也不是 UTF-8,
如果 IE 正常,那看看 IE 是用哪種編碼。

mayyola iT邦新手 2 級 ‧ 2017-11-27 14:21:52 檢舉

asp 頁面加
Response.Charset="utf-8"
Session.Codepage=65001
跟html全部為UTF-8 IE的畫面就可以正常
但是這讓我另一個登入系統登不進去帳密- -超怪,不相干的系統..

fysh711426 iT邦研究生 4 級 ‧ 2017-11-27 19:05:45 檢舉

http://www.mzwu.com/article.asp?id=3994
上了一課,我都寫 ASP.NET 沒有遇過 XD

0
baida0630
iT邦新手 4 級 ‧ 2017-11-22 18:38:08

我簡單的大概講一次,JQuery的作法,簡單來說透過ajax去跟資料庫要資料
當他返回資料以後 你再透過javascript去重繪html的內容

<!DOCTYPE html>
<html>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>
<body>

<p>Click "Try it". Wait 3 seconds, and the page will alert "Hello".</p>
<div id="test"></div>

<script>
//當畫面展開始第一次load
$(function(){
setTimeout(myFunction, 3000);
});
function myFunction() {
    alert('Hello');
    //load完以後開始每達到幾秒就更新一次
    setTimeout(myFunction, 3000);
}

//繪製HTML內容
var _html = '';
_html += ''
_html += '<select class="form-control" id="IIDDL">';
_html += '<option value="0">請選擇分類</option>';
_html += '</select>';
$("#test").html(_html);
</script>

</body>
</html>

跟資料庫溝通的ajax教程

怎麼把值套進去我就不細說了,如果你能做到拿到資料應該就不難達成這件事情了。

mayyola iT邦新手 2 級 ‧ 2017-11-22 18:44:17 檢舉

想請問asp網頁也可以加入JQuery語法嗎? 謝謝

baida0630 iT邦新手 4 級 ‧ 2017-11-23 10:24:41 檢舉

在ASP寫HTML的頁面裡面加入該加的東西就能使用了

小魚 iT邦高手 1 級 ‧ 2017-11-23 12:26:14 檢舉

只要是網頁就可以加入jQuery語法,
只是asp的後端怎麼做我就不清楚了,
只摸過ASP.NET...

0
hahahacja
iT邦新手 5 級 ‧ 2017-11-26 10:42:58

提供另一方式
chorme > 擴充功能 > 外掛 "定時自動重新整理頁面" (Super Auto Refresh)
你可自行設定重整時間 及 任何網頁重整.

(firefox 是裝 ReloadEvery ,但firefox版本更新後 ReloadEvery失效)

不好意思 借放外聯 SEO用
https://www.asian-archi.com.tw/
https://www.archi.net.tw/tw/shop/

我要發表回答

立即登入回答