http://topic.csdn.net/u/20090512/09/89a02f56-36ec-4496-b8f5-49741d197c6d.html?1449320843
|zyciis| 为什么在新打开的窗口不能去执行父窗口的TextBox的onchange()事件,谢谢var obj=window.opener.document.getElementById(NameControl);
obj.onchange.call(obj);
|zyciis| 为什么在新打开的窗口不能去执行父窗口的TextBox的onchange()事件,谢谢var obj=window.opener.document.getElementById(NameControl);
obj.onchange.call(obj);
<input id="a" type="text" onchange="alert(1)"/>
<a href="test.html" target="_blank">aaa</a>
<input type="button" onclick="window.opener.document.getElementById('a').onchange()">
</body>
你试试这个.
正常的话应该是可以的.
只是你那里可能服务器做了点处理吧...
onChange事件的服务器事件
然后他把js的onChange替换掉了
当我用
obj.change()的时候,就是调用了服务器的onChange事件,
但我那时个TextBox并没有声明服务器的onChange
所以就会造成"对像不支持此属性和方法"
但是我想了一下又不是
因为在本页面obj.change()是成功的无解中...
<input id="a" type="text"/>
<a href="test.html" target="_blank">aaa</a>
<input type="button" onclick="window.opener.document.getElementById('a').onchange()">
</body>
<script>
document.getElementById('a').attachEvent("onchange",function(){alert(1)})
</script>你再试试这个.他内部应该用这种加的.
call([thisObj[,arg1[, arg2[, [,.argN]]]]])
call 方法可以用来代替另一个对象调用一个方法。call 方法可将一个函数的对象上下文从初始的上下文改变为由 thisObj 指定的新对象。
MaterialEdit.aspx
<input onChange="">
改为:
<input onpropertychange="">(ColorListSelect.aspx不变)