2015-01-28 3 views
4

Я использую knockoutmvc для связывания элементов управления. (http://knockoutmvc.com/)кнопки KnockoutMVC представить не работает

Я получаю следующее сообщение об ошибке при нажатии на кнопке.

Ниже моя реализация вид Razor:

@using PerpetuumSoft.Knockout 

@model OpManWeb.ViewModel.ManageAddressVM 

@{ 
    var ko = Html.CreateKnockoutContext(); 
} 

@{ 
    ViewBag.Title = "Manage Addresses"; 
} 

@Scripts.Render("~/customjs") 
@Scripts.Render("~/knockout") 
<div class="container-fluid zeropadding" style="margin-top:15px; width:100%; font-size:13px;"> 

    <div class="row"> 
     <div class="col-md-3 col-lg-3 clmargin"> 
      <div class="form-group col-md-4 zeropadding div1adjustments"> 
       @Html.LabelFor(m => m.IndexNo, new { @class = "fieldtext" }) 
      </div> 
      <div class=" form-group col-md-8 div2adjustments "> 
       @ko.Html.TextBox(m => m.IndexNo, new { @class = "form-control input-sm fieldtextinput " }) 
       <input type="reset" class="btncross" data-toggle="tooltip" title="Click to clear" value="X" /> 
       <button type="button" class="btn btn-search searchbtn" data-toggle="tooltip" data-placement="bottom" 
         title="Search customer as per Index No"> 
        <i class="fa fa-search"></i> 
       </button> 

      </div> 
     </div> 
     <div class="col-md-2"> 
       @ko.Html.Button("Add Address", "AddAddress", "Customer", null, new { @class = "btn btn-large btn-primary" }) 
     </div> 
    </div> 

</div> 

Ниже приведен код CustomerController Файл

using System; 
using System.Collections.Generic; 
using System.Linq; 
using System.Web; 
using System.Web.Mvc; 
using ServiceStack.Mvc; 
using OpManWeb.Models; 
using PerpetuumSoft.Knockout; 
using OpManWeb.ViewModel; 
using MvcJqGrid; 

namespace OpManWeb.Controllers 
{ 
    public class CustomerController : KnockoutController 
    { 
     public ActionResult AddAddress() 
     { 
      AddressVM addressVM = new AddressVM(); 
      addressVM.selectmode = Mode.Add; 
      return View("AddEditAddress", addressVM); 
     } 
    } 
} 

Ниже þér ошибки Html Ответ Error Response While Clicking on Button

+0

Ну, вы выполняете вызов ajax в браузере, но возвращаете html-страницу из контроллера. Какой результат вы ожидаете? См. Здесь пример, что вы ожидаете предоставить в своем контроллере: http://knockoutmvc.com/ClickCounter –

+0

Кроме того, то, что вы разместили, не похоже на Bundle.config, не могли бы вы дважды проверить. Также не могли бы вы объяснить, почему Bundle.config является значительным в вашем случае? –

+0

Hi zespri, Спасибо за ваш ответ. Я хочу использовать ko.Html.Button как кнопку «Отправить», которая может публиковать данные, а также при необходимости открывать разные виды. Итак, как это достичь? Извините за путаницу путаницы. Код предназначен для файла просмотра Razor. –

ответ

3

При использовании @ Ko.Html .Button мы должны вернуть Json Object From Controller, как показано ниже.

public ActionResult AddAddress() 
    { 

     return Json(new { Url = Url.Action("Stock", "Inventory") }); 
    } 
+0

Вы также можете использовать return Json (Model); –

+0

Я попробовал это с внешним url как string вместо url.action и т. Д., И это не сработало. Жаль, что у нас нет времени для реорганизации и удаления kmvc для нашего проекта. http://stackoverflow.com/a/11618190/169714 –

+0

да http://stackoverflow.com/questions/11618042/is-there-a-reason-i-would-use-knockout-mvc-instead-of-knockout -js/11618190 # 11618190 Это правда, это действительно Bastard Child. :( –

Смежные вопросы