回答
三種方式:POST,GET或cookie。你使用哪個取決於你的情況。
POST:在頁面中包含一個帶有兩個隱藏字段的表單。發生事件時,用JS變量填充隱藏的字段,並將表單提交給cgi程序。
GET:讓JS將變量粘貼到URL上。當用戶點擊鏈接時,它激活一個JS功能。 JS函數將瀏覽器發送到「cgi-prog.cgi?JSvar1 = foo & JSvar2 = bar」
cookies:JS一旦確定了變量,就會在用戶的機器上設置一個cookie。 Perl讀取該cookie以獲取變量。
服務器上的CGI PROG運行和JavaScript是在瀏覽器中,對不對? 也許你應該通過URL(GET)或HTTP Post將變量傳遞給服務器?
其他人建議的方法,如HTTP GET,POST,查詢字符串,隱藏的表單字段和cookie都非常好。但爲了更多的巧妙和交互性,請考慮使用AJAX。
我們有一個網絡應用程序,而不是在瀏覽器端使用Javascript,當點擊某些內容時,通過AJAX將一些數據發送到服務器端腳本。這與你所做的相似嗎?如果是這樣,那麼AJAX就是要走的路。
下面的例子使用GET將送東西回一個Perl CGI腳本(位於「URL」):
var request = new XMLHttpRequest();
request.open("GET", url, false);
request.send(null);
if(!request.getResponseHeader("Date")) {
var cached = request;
request = new XMLHttpRequest();
var ifModifiedSince = cached.getResponseHeader("Last-Modified");
ifModifiedSince = (ifModifiedSince) ?
ifModifiedSince : new Date(0); // January 1, 1970
request.open("GET", url, false);
request.setRequestHeader("If-Modified-Since", ifModifiedSince);
request.send("");
if(request.status == 304) {
request = cached;
}
}
當然,永遠不要自己寫這個東西。這只是爲了說明發生了什麼。總是使用一個好的Javascript庫來做AJAX的東西。有很多好的東西在那裏: List of modern AJAX Libraries and Frameworks
有趣的答案和謝謝。最後我可以這個方法哪個好 – joe 2009-06-10 14:55:49
- 1. 變量CGI腳本
- 2. perl語法來訪問cgi腳本中的常量變量
- 3. 可以在cgi/ruby腳本中訪問php $ _SESSION變量嗎?
- 4. 如何在tcl(expect)腳本中訪問bash變量腳本
- 5. 如何訪問haml文件中的java腳本變量的值?
- 6. 如何訪問邊PHP標籤中的java腳本變量?
- 7. Java腳本變量問題
- 8. 如何從內容腳本訪問後臺腳本變量
- 9. 在bash腳本中訪問變量
- 10. 在ruby腳本self.method中訪問變量
- 11. 通過JavaScript訪問cgi腳本
- 12. 如何在strings.xml中訪問java變量
- 13. 如何在Java中訪問Perl變量?
- 14. 在php文件中訪問用Java腳本編寫的變量
- 15. 如何在CGI腳本中調用另一個Perl CGI腳本?
- 16. 如何在bash腳本中訪問PHP環境變量?
- 17. 如何在Gradle腳本中訪問來自Bamboo的變量?
- 18. Groovy範圍 - 如何在方法中訪問腳本變量
- 19. 如何在Google Apps腳本中訪問HTTP GET變量?
- 20. 在Alfresco中,如何從Java腳本訪問工作流實例的變量?
- 21. 變量在Java腳本
- 22. Java訪問變量
- 23. 如何從PHP腳本訪問遠程CGI?
- 24. 如何訪問Python CGI腳本中的URL查詢字符串?
- 25. 腳本訪問內嵌JavaScript變量
- 26. 訪問腳本之外的變量
- 27. 從Tampermonkey腳本訪問「頭」變量
- 28. 訪問PDF的腳本變量
- 29. Grails GSP訪問腳本內的變量
- 30. 用Java編寫CGI腳本
好觸發我的思想去思考不同的方式。 謝謝suveshpratapa – joe 2009-06-10 14:47:35