javascript
  • asp.net-mvc
  • kendo-asp.net-mvc
  • 2014-02-20 58 views 0 likes 
    0

    我想打电话从我的观点传递paremeter值 这是我的代码的动作如何从我的视图中将参数传递给控制器​​操作?

    window.location.href = '@Url.Action("Index", "RelatoriosConsolidados")'; 
    

    传递一些参数,我可以做到这一点

    window.location.href = '@Url.Action("Index", "RelatoriosConsolidados", 
              new { param1 = "Value"})'; 
    

    ,但我不能得到的值日期选择器

    @(Html.Kendo().DatePicker() 
          .Name("#datepicker") 
          .Events(e => e.Change("change")) 
          .Min(new DateTime(2012, 7, 1)) 
    
          .Value(Model.dataInicial) 
          .HtmlAttributes(new { style = "width:150px" }) 
    
        function change() 
        { 
        var x = kendo.toString(this.value(), 'd'); 
        window.location.href = '@Url.Action("Index", "RelatoriosConsolidados", 
        new { data = x })'; 
        } 
    

    我该怎么做?

    +0

    你能告诉我们你的'Index'的操作方法? – 2014-02-20 18:27:15

    +0

    var x是一个javascript变量,它运行在客户端。客户端脚本运行之前,Url.Action正在服务器上发生。 – Dismissile

    +0

    究竟如何获得日期选择器值? –

    回答

    0

    我会通过作为传统的MVC路线{controller}/{Action}/{Id}行动的网址。然后在您的操作中获取传递的参数(具有相同的参数名称)。我的执行将是这样的:

    View.cshtml

    $(document).ready(function() { 
          // create DatePicker from input HTML element 
          $("#datepicker").kendoDatePicker(); 
    
          $('#btnSubmit').click(function() { 
           alert($('#datepicker').val()); 
           var data = $('#datepicker').val(); 
           window.location.href = "/Home/Contact/" + data; 
          }); 
         }); 
    

    MyController.cs

    public ActionResult Contact(string data) 
         { 
          //do something with 'data' 
          ViewBag.Message = "Your contact page."; 
    
          return View(); 
         } 
    
    相关问题