2010-09-12 28 views
-1

如何編寫將單擊網頁上的按鈕的程序/腳本?該按鈕的功能是:OnClick="func();"。 Firebug沒有提供關於被調用函數的信息,所以我不能調用AJAX查詢。如何在遠程主機上調用js函數?

:)

+0

你能給出一些(很多)關於你想要做什麼的更多信息嗎?! – 2010-09-12 21:47:57

+0

服務器無法調用客戶端 - 但客戶端可以調用服務器 - 您可以使用本地事件/用戶事件觸發服務器功能和方法,從而可以更改Clint狀態。但是,客戶端開始通信。 – Asaf 2010-09-12 21:52:09

回答

0

你不能用JavaScript這樣做,不傾倒你的頁面上的網頁的內容,或者使用iframe。並且,您不能與其外部的iframes內的元素進行交互(除非它位於相同的域中;謝謝@Pekka)

+0

我不知道。謝謝:)你每天都會學到新的東西。 – 2010-09-12 21:51:48

+0

這是一篇關於此問題的好文章:https://developer.mozilla.org/En/Same_origin_policy_for_JavaScript – 2010-09-12 22:11:16

+0

我知道同源策略,但不知道它應用於'iframes'。 – 2010-09-12 22:12:43

0

除非您在一定程度上控制網頁服務器(在這種情況下您可以使用跨域AJAX或其他類似的東西),否則您無法做到這一點,但是您可能能夠複製單擊按鈕的效果。這被稱爲CSRF attack

0

假設你有按鈕A.當按鈕A被按下時,功能X應該運行。你可以使用點擊方法的雙重考慮建議,或者你可以只直接運行功能X.

選項1 = document.getElementById('A').click()

選項2 = X()

注:很多人建議這樣做:document.getElementById('A').onclick(),但有多種方法將功能綁定到事件上,這種方式並不能涵蓋所有這些方式 - 它只涵蓋了某人有<button onclick="..."/>的情況。例如,如果您使用jQuery,則使用.onclick將不夠用。