【问题标题】:Calling controller method and display return value调用控制器方法并显示返回值
【发布时间】:2017-12-11 15:33:43
【问题描述】:

我正在使用 JQuery 并调用控制器方法在标签中显示一些文本。

这是我的代码-

控制器方法

public string GetText(int number)
{
     string txt = number.ToString();
     return txt;
}

在 cshtml 页面上

 @Html.Label(((MyController)this.ViewContext.Controller).GetText(1234))  

但是在这里,文本没有显示在标签内。
谁能告诉我我在这里做错了什么。

【问题讨论】:

  • 这看起来类似于您在此处尝试实现的目标:stackoverflow.com/questions/6302285/…
  • @danish 但在这里我想用函数发送一个参数。我怎样才能做到这一点
  • @Aparna : ASP.NET MVC 的版本?
  • @Aparna :如果可能的话,请您分享您的具体方法实现。

标签: jquery controller label


【解决方案1】:

我注意到“GetText”在您的代码第一次运行时没有达到断点。

添加下面的代码运行它,然后将更改恢复到您的代码,然后对我来说工作正常。

@{
    var valueText =((MyController)this.ViewContext.Controller).GetText(1234);
}

@Html.Label(valueText)
@Html.Label(((MyController)this.ViewContext.Controller).GetText(1234))

  1. 如果“GetText”方法有一些简单的逻辑,没有任何DB调用,我们可以使用自定义HTML Helpers方法, http://www.c-sharpcorner.com/UploadFile/3194c4/custom-html-helpers-in-mvc/

  2. 如果在主控制器操作本身期间可以获取“数字”值,则使用 ViewBag / TempData 或创建一个更多属性,

    http://www.c-sharpcorner.com/blogs/viewdata-vs-viewbag-vs-tempdata-in-mvc1

    在主控制器中调用此代码,

    ViewBag.Number = GetText(vm.Property2);或 vm.Property2 = GetText(vm.Property2); @Html.Label(ViewBag.Number OR Model.Property2)

  3. @Html.Action / @Html.RenderAction 和部分视图。请找到以下链接,

    http://www.c-sharpcorner.com/article/html-action-and-html-renderaction-in-Asp-Net-mvc/

  4. jQuery AJAX 也可以。

如有任何问题或疑虑,请告诉我。

【讨论】:

  • 要求很简单。有什么办法可以修改我当前的代码吗?那里有什么问题? GetText() 函数返回值但不显示。
  • @Aparna :我注意到“GetText”在您的代码第一次运行时没有达到断点...
猜你喜欢
  • 1970-01-01
  • 2013-01-20
  • 2019-10-06
  • 2020-09-28
  • 2018-11-07
  • 2016-04-25
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多