从 JavaScript 调用类文件(.cs 在 C# 中)函数,并帮助编写 Ajax+Webservices

call class file(.cs in c#) function from javascript and helps how to write Ajax+Webservices

本文关键字:函数 帮助 Ajax+Webservices 调用 JavaScript 文件 cs      更新时间:2023-09-26

在这里,我的简单示例代码是:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Services;
namespace PopUpFromCsFile
{
    public class PopUpWindow
    {
        public void PopUpFromCsFile()
        {
         string str1 = "<script> $.ajax({" +
                     "type: 'GET'," +
                      "url: 'Service/Class1.cs/callfromjs'," +
                        "data: '{}'," + "success: function () { getDetails(); } " +
                        "});</script>";
        page.ClientScript.RegisterStartupScript(this.GetType(), "script1", str1);
        }
        [WebMetod]
        public string  CallFromJs()
        {
            return "santosh";
        }
      public void getDetails()
       {
        string str = "<script>alert('Hai');</script>";
        System.Web.UI.Page page = (System.Web.UI.Page)HttpContext.Current.Handler;
        page.ClientScript.RegisterStartupScript(this.GetType(), "script2", str);
       }
    }
}

解释

在 PopUpFromCsFile(( 中,我为 Ajax+WebMethod 编写了代码。是 Url 路径是否正确,这里我无法从脚本调用 getDetails((。

你不能。.cs是 C# 源代码文件,不能(从任何语言(按原样使用。必须将其编译为 DLL。

一旦你这样做了,你就无法与JavaScript中的DLL进行通信。JavaScript 被沙盒化到您的浏览器中。您需要编写(并在每台客户端 PC 上安装(浏览器扩展以与本机 DLL 进行交互。

您需要将 C# 代码重写为 JavaScript。