我使用 Internet Explorer 8 和 Sharepoint 2007。
简报:我有一个 NewForm,其中包含列表中的各个字段。我需要使用 javascript 从其中一个字段获取用户引入的值(在文本框中)并使用 onChange 将其粘贴到同一页面中的其他字段(其他文本框)。
问题:我是一个 JavaScript 新手,我不能设置事件 'onChange' 来触发我的函数,或者至少不能触发 'alert("Test") ... 或者只是我在做它错了,不知道为什么(更有可能)......
假设我要使用的字段具有 FieldName="IDTeam"、type="text"和 id="id_TeamField"。
//My JS below "PlaceHolderMain"
_spBodyOnLoadFunctionNames.push("setTxtBoxesValues");
function setTxtBoxesValues()
{
//snipped
getField('text','IDTeam').onChange = function(){alert('Test')};
//"getField('text', 'IDTeam).onChange = function(){myFunction()};"
//If I want to call myFunction() when onChange event is triggered
}
此外,尝试使用此方法代替 getField:
document.getElementById('id_TeamField').onChange = function(){alert('Test')};
如果我想在 onChange 事件触发时调用 myFunction()
知道我做错了什么吗?
最佳答案
onchange 是一个事件,所以你要么像这样把它放在标签中:
<input type="text" id="IDTeam" onchange="(call function here)" />
或者您将 addEventListener 应用于该 DOM 对象:
document.getElementById("IDTeam").addEventListener("change", function() {//call function here});
在 IE6 中你可能需要:(不确定它是否有效,因为现在很少有人使用 ie6)
document.getElementById("IDTeam").attachEvent("onchange", function() {//call function here} )
关于javascript - onChange 事件不触发,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10952804/