C# IE中的Windows窗体控件不响应JavaScript调用
我对包装在DLL中并部署到IE对象标记中的Windows窗体控件有问题。该对象应返回一个字符串,Javascript将该字符串放入一个隐藏字段中,以准备发回服务器。这是一种我已经使用过好几次的方法,但是我现在从Javascript收到了可怕的“Object不支持此方法或属性”错误消息。我已经把范围缩小到对返回字符串的函数的调用 我已经消除的东西:C# IE中的Windows窗体控件不响应JavaScript调用,c#,javascript,windows,internet-explorer,forms,C#,Javascript,Windows,Internet Explorer,Forms,我对包装在DLL中并部署到IE对象标记中的Windows窗体控件有问题。该对象应返回一个字符串,Javascript将该字符串放入一个隐藏字段中,以准备发回服务器。这是一种我已经使用过好几次的方法,但是我现在从Javascript收到了可怕的“Object不支持此方法或属性”错误消息。我已经把范围缩小到对返回字符串的函数的调用 我已经消除的东西: 函数调用中的拼写错误 被调用函数是一个公共函数 权限错误-所有操作都在本地主机、受信任站点等上运行 可能相关的事项: dll包含控件中使用的两个类 该
<body>
<script language="javascript" type="text/javascript">
function GetValues(){
alert(document.draw1.ReturnSerialisedObjectString());
return true;
}
</script>
<input type="hidden" id="hdnData" runat="server" />
<input type="button" onclick="javascript:return GetValues();" value="Click Me" />
<br /><br />
<object id="draw1" classid="SlainteCustomControls.dll#SlainteCustomControls.FreeFormControl" width="482" height="579" viewastext />
函数GetValues(){
警报(document.draw1.ReturnSerialisedObjectString());
返回true;
}
试试:-
已经有了,这也没有乐趣。在机器级别上是否还有其他东西阻止用户控件通过JavaScript访问?我已经修改了CAS策略,以允许对localhost(用于测试)具有完全权限。能否在组件中提供一些C#代码示例。您是否实施了IObjectSafety?必须正确修饰类和方法才能通过COM访问?
alert(document.getElementById('draw1').ReturnSerialisedObjectString());