2015-04-12 174 views
0

我對編碼有一個非常基本的理解。我正在使用名爲SpreadsheetWEB的程序來製作網頁表格計算器。它有一個功能,允許你使用Javascript來修改你使用他們的軟件創建的東西。長話短說,他們改變了他們的軟件,使我的自定義功能無用。我插入我的自定義代碼到他們的程序「頁面的Onload」部分如下:獲取隨機生成元素的ID

<script language="javaScript"> 
{ 
document.getElementById('btn_Next').style.opacity=0; 
document.getElementById('btn_Next').style.filter='alpha(opacity=0)'; 
document.getElementById('btn_Next').click(); 
} 
</script> 

這完美地工作,當按鈕本身是靜態命名btn_Next。但是,他們軟件的最新版本現在可以動態生成按鈕的ID。因此,我需要修改我的代碼以獲取隨機生成的按鈕ID,以便我可以對其執行上述功能。

我知道這都是愚蠢的,但這是我的公司堅持要與我們合作,所以沒有什麼好的方法可以深入挖掘任何代碼來正確地構建這些代碼。如果這是在所有有用的,這裏的基礎上,下面的代碼的新按鈕的輸出(因爲你可以看到它旁邊會顯示):

接下來

這是基於這樣的代碼:

<span id="ccid_FormOutputéC1288éV1289éc1323" class="VSJS_InputBase" style="position: absolute; width: 82px; height: 19px; left: 0px; top: 27px; line-height: normal; z-index: 3;"> 

<a id="FormOutputéC1288éV1289éc1323" class="VSJS_JButton" type="BUTTON" style="width: 80px; height: 17px; position: absolute; left: 0px; top: 0px; display: block; cursor: pointer; background: -moz-linear-gradient(center top , rgb(221, 221, 221), rgb(187, 187, 187)) repeat scroll 0% 0% transparent; overflow: hidden; text-align: center;"> 

<span style="position: absolute; left: 7px; top: 1px; width: 70px; border: medium none; -moz-user-select: none;">Next</span> 

「a id =」後面的值我相信是按鈕的ID,因爲它每次都會改變,當我用Firebug進行檢查時,它指向上面的集羣。

我試圖通過類和類型來獲取元素,但是這對我不起作用。我相信這是因爲有多個相似的元素。

預先感謝您的時間幫助我解決我遇到的這個問題。

+0

是什麼它的唯一按鈕類=「VSJS_JButton」它的唯一的按鈕 –

+0

非常好,但我曾嘗試修改我的原始代碼從getElementByID getElementByClassName,然後使用該名稱類。然而,我沒有改變它getElementsByClassName(元素與元素(複數)),這是我做錯了什麼?我現在去測試。 –

回答

0
$(".VSJS_JButton").get(0).id 

請在此處嘗試此行。 還學習jQuery

+0

我並不是一個程序員,但我不得不學習這個程序(和一些代碼),這樣我的公司才能開始爲客戶自動化他們的Excel模型。感謝您的協助。我會在哪裏添加該行? –

+0

這是它添加它所需的id。 –

+0

謝謝,我現在測試。非常感激。 –

0

修改我的代碼,根據您給了我並把它放在那裏的老ID btn_Next是,像這樣的ID的名稱(沒有工作):

<script language="javaScript"> 
{ 
document.getElementById('$(".VSJS_JButton").get(0).id').style.opacity=0; 
document.getElementById('$(".VSJS_JButton").get(0).id').style.filter='alpha(opacity=0)'; 
document.getElementById('$(".VSJS_JButton").get(0).id').click(); 
} 
</script> 
+0

javascript不夠強大,將它分配給一個變量,並使用該變量不加引號 –