本文介绍了使用参数从 JavaScript 调用 C# 方法的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我想使用来自 JavaScript 的参数调用 C# 方法.有可能,如果我删除方法 <% showDetail(); 的参数 s;%>

I want to call a C# method with parameter from JavaScript. It is possible, if I remove the parameter s of the method <% showDetail(); %>

function showDetail(kurz)
        {
            String s = kurz.toString();
            <% showDetail(s); %>;
        }

C# 测试方法:

public void showDetail(String s)
        {
            Label_Test.Text = s.ToString();
        }
public void showDetail()
        {
            Label_Test.Text = "";
        }

它在没有参数的情况下工作正常,但使用 s 变量我得到一个编译器错误:

It works fine without parameter but with s variable I get a compiler error:

CS0103:当前上下文中不存在名称s"

我试过了

showDetail(Object s){....}

还有

showDetail(String s){....}

但它不起作用.

推荐答案

创建 Web 方法.这是一种从 Javascript 调用 c# 方法的简单而简洁的方法.您可以使用 jQuery Ajax 调用该方法.请参阅以下 webMethod 示例.

Create a web method. That's an easy and neat way of calling c# methods from Javascript. You can call that method using jQuery Ajax. See the below example for a webMethod.

[WebMethod]
public static string RegisterUser(string s)
{
    //do your stuff
    return stringResult;
}

然后使用jQuery ajax调用这个方法.您也可以传递参数.如下所示

and then call this method using jQuery ajax. You can pass parameters also. like given below

function showDetail(kurz) {
String sParam = kurz.toString();
    $.ajax({
    type: "POST",
    url: "PageName.aspx/MethodName",
    data: "{s:sParam}", // passing the parameter
    contentType: "application/json; charset=utf-8",
    dataType: "json",
    success: function(retValue) {
        // Do something with the return value from.Net method
        }
    });
}

这篇关于使用参数从 JavaScript 调用 C# 方法的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

08-05 10:27