从Java脚本调用C#代码隐藏代码

从Java脚本调用C#代码隐藏代码,c#,javascript,C#,Javascript,我们正在使用VS2008。我们正在调用ActiveX shell scrip对象,该对象创建为EXE可执行文件,它读取Pinpad进行身份验证并返回结果。此对象在ASPX页面的Javascript中调用 在得到结果之后,我们需要存储信息,这是我们在C#代码隐藏页面中编写的 我的问题是,我们应该如何在ASPXJava脚本中调用代码隐藏或WCF服务 我的java脚本代码如下: function launchExecutable(strdata) { try {

我们正在使用VS2008。我们正在调用ActiveX shell scrip对象,该对象创建为EXE可执行文件,它读取Pinpad进行身份验证并返回结果。此对象在ASPX页面的Javascript中调用

在得到结果之后,我们需要存储信息,这是我们在C#代码隐藏页面中编写的

我的问题是,我们应该如何在ASPXJava脚本中调用代码隐藏或WCF服务

我的java脚本代码如下:

  function launchExecutable(strdata) {

        try {
            var shellActiveXObject = new ActiveXObject("WScript.Shell");

            shellActiveXObject.Run("c:\\Test\\EBCK.exe " + strdata, 1, true);
        }
        catch (e) {
            alert(e.message);
        }

        try {
            var abc = window.clipboardData.getData('Text');
            // from here we have to call the C# code which is written in CS file or 
            // call a WCF Web service
        }
        catch (e) {
            alert(e.message);
        }

}

您可以将值存储在隐藏字段中,然后回发页面。当页面发回时,访问代码隐藏中的隐藏字段值

<asp:Hidden Id="hid" value="" runat="server">


要在javascript中回发页面,请使用u doPostback。

您可以在页面上添加脚本管理器


并使用
[webmethod]
属性创建一个静态方法,并从JQuery或javascript调用该方法,以使用ScriptManager调用javascript中的wcf服务。例如:

<asp:scriptmanager id="ScriptManager1" runat="server">
        <services>
            <asp:servicereference path="http://localhost:61586/Service1.svc">        
 </services> 
您可以使用onSuccess从服务调用中获取结果并显示数据

function onSuccess(result) {
                 alert( result.Name + " " +result.Address);
             }
如果服务失败,您可以使用onFail

希望这有帮助

function onSuccess(result) {
                 alert( result.Name + " " +result.Address);
             }