onclick='showthread(); myjsfunction()' language='vbscript'>
有點上述的效果,但不起作用。 showthread是一個vbscript函數,myjsfunction是一個javascript函數。如何在相同的onclick = event上調用javascript和vbscript函數?
謝謝。
onclick='showthread(); myjsfunction()' language='vbscript'>
有點上述的效果,但不起作用。 showthread是一個vbscript函數,myjsfunction是一個javascript函數。如何在相同的onclick = event上調用javascript和vbscript函數?
謝謝。
我不是很熟悉的VBScript,但在我看來,你可以做類似
function myjsfunction() {
window.location = "vbscript:showthread();"
// other JS code
}
調用JS從VBScript函數。這當然很冒險,但我不知道有更好的方法。
但是,如果可能,最好是完全轉換爲JavaScript。
我們必須做window.location嗎?我們不能把它放在同一個窗口嗎? –
在我看來,你最好的選擇是放棄onxyz
處理程序,並通過DOM —或兩者的組合正確連接東西。
比如你的元素可以通過onxyz
(我複製你的那個語法)掛鉤VBScript的:
<div id="mydiv" onclick="showthread();" language="vbscript">
...並在文檔中<script>
標籤可以掛鉤的JavaScript的:
<script>
document.getElementById("mydiv").attachEvent("onclick", myjsfunction);
</script>
(我使用attachEvent
那裏,因爲我知道你使用的是基於IE的引擎,如果你使用VBScript)。
當然或者,具有兩個<script>
元件(一個JavaScript和一個VBScript)的和通過DOM掛鉤兩種功能:
<div id="mydiv">
<script>
document.getElementById("mydiv").attachEvent("onclick", myjsfunction);
</script>
<script type="application/x-vbscript">
document.getElementById("mydiv").attachEvent "onclick", showthread
</script>
(或任何正確的MIME類型爲VBScript的。或者,您可以使用基於IE的引擎使用language="VBScript"
。)
如何將事件附加到表格行?因爲這就是onclick事件所在的位置
@ like-a-trainee:使用各種DOM方法來識別表格行 - 「getElementById」,「getElementsByTagName」,「rows」屬性...或者,當然,因爲'click'事件氣泡,只需將它掛在'table'或'tbody'元素上並引用'event.target'。 –
客戶端VBScript?在2012年?爲什麼? –
這是一個HTA :) –
這是行不通的。你剛剛混合了服務器端和客戶端代碼。以不同方式解決問題。告訴我們你真正想要做什麼 – polin