问题描述
我想使用来自 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# 方法的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!