【发布时间】:2014-09-08 10:50:00
【问题描述】:
塞纳里奥: 我想从 JavaScript 调用一个 Helper 方法。我在服务器端生成了一些控件,例如 Grid、DataTimePicker、SlideShow 等,用于 ASP.NET MVC。 现在,如何从 JavaScript 调用辅助方法?
【问题讨论】:
标签: javascript asp.net-mvc custom-controls
塞纳里奥: 我想从 JavaScript 调用一个 Helper 方法。我在服务器端生成了一些控件,例如 Grid、DataTimePicker、SlideShow 等,用于 ASP.NET MVC。 现在,如何从 JavaScript 调用辅助方法?
【问题讨论】:
标签: javascript asp.net-mvc custom-controls
我在 view(ASP.NET MVC) 中找到了调用辅助方法的方法。 例如:
namespace Component
{
public class HelperMethod
{
public static MvcHtmlString GridSort(this HtmlHelper helper,string fieldName)
{
//do something
}
}
}
我认为的代码:
@using Component
<script>
$(document).ready(function(){
var message='FirstName';
var result = "@Html.GridSort(message)"; // here is the Error
$("div#grdUsers").html(result );
});
</script>
<div id="grdUsers">
//grid elements
</div>
现在,问题是:我无法将 JavaScript 变量(消息)值传递给辅助方法(GridSort)。 我能做什么?
【讨论】:
第一种方式:- 将其设为 ACTION returning json - 并拨打 Ajax。
@using Component
<script>
$(document).ready(function(){
var message='FirstName';
$.ajax({
url: '/Your Controller name /your Method name',
type: 'POST',
data: {message:message},
dataType: 'json',
contentType: 'application/json; charset=utf-8',
success: function () {
},
error: function (error) {
alert('error');
}
});
});
</script>
<div id="grdUsers">
//grid elements
</div>
第二种方式:-使用Request.QueryString["message"]
【讨论】: