2016-08-03 49 views
0

我試圖在由Jira創建的HTML標記中獲取onclick/onfocus/onchange。該項目本身就是一個下拉列表,而我能得到的onfocus對其他ID的工作,我不能讓它就降工作下拉列表通過Javascript將HTML注入到div中

我有什麼:

<script type ="text/javascript" > 
console.log("Testing"); 
var colorDropDown = document.getElementById('someID'); 

function changeColor() 
{ 
    //if(value) 
    alert("Hello World"); 
} 

document.getElementById("someID").innerHTML ="<onfocus=\"changeColor()\"></select>" 
//document.getElementById("customfield_11901").innerHTML = "<select class=\"select cf-select\" name=\"customfield_11901\" id=\"customfield_11901\" onfocus=\"changeColor()\">" 

</script> 

使用的innerHTML後, onfocus不會出現在頁面中。我也試過通過複製整個標籤並通過HTML輸入它。

我在getElementById後使用了.onchange函數,但這也不起作用。

+1

''是不是一個東西。 – Siguza

+1

''不是有效的HTML。你的意思是''? –

+1

你不需要注入html來添加一個事件監聽器,有沒有理由你在那條路上? – aw04

回答

3

我會使用jQuery下.attr()函數:

$('#select_id').attr('onfocus', 'changeColor();'); 

或者你也可以使用addEventListener與純JS:

object = document.getElementById('#select_id'); 
object.addEventListener('focus', 'changeColor();'); 
+0

我給了這個嘗試,我一開始沒有工作,但我GOOGLE了addEventListener函數,並使我的字符串看起來像這樣: testObject = addEventListener('change' ,function(){colorChange();},false) 這最終爲我工作。非常感謝你! – BlueBaroo

相關問題