2013-07-30 60 views
2

進出口使用mvc4並即時得到JSON從http://api.feedzilla.com/v1/categories.json多個提交按鈕在控制器中獲取空值?

我的模型具有下面的代碼

public class catagorygroup 
    { 

     public List<CatagoryModel> catagoryModel { get; set; } 

    } 

    public class CatagoryModel 
    { 

     public int category_id { get; set; } 
     public string english_category_name { get; set; } 
    } 

我的看法是這樣的

 @for (int i = 0; i < Model.catagoryModel.Count; i++) 
     { 
      using (Html.BeginForm("News", "Catagory")) 
      { 

      <li> <input type="submit" name="w8-red" class="w8-button red" value= @Model.catagoryModel[i].english_category_name /> </li> 
     @Html.HiddenFor(model => model.catagoryModel[i].category_id); 
     @Html.HiddenFor(model => model.catagoryModel[i].english_category_name); 

     <br/><br/> 
      } 
      }  

,我的看法是這樣的

enter image description here

如果我點擊第一個按鈕體育按鈕即時得到「名稱,ID」值這樣

enter image description here

,但如果我點擊比第一按鈕即時得到這樣的事情以外的任何按鈕[空值] enter image description here

出了什麼問題在我的代碼

+0

ü在單個頁面進行多種形式。 ! –

+0

是的,每一個像「體育,藝術,博客等」按鈕都是提交按鈕有自己的形式 – Backtrack

+0

@AshokDamani但它會發布整個模型的權利,我只需要獲得所選按鈕的「category_id,english_category_name」 ,例如,如果我點擊「體育=我會得到一些身份證和姓名」同樣,如果我點擊「藝術=它應該只給出藝術身份證和姓名」得到它 – Backtrack

回答

0

看看這個,它可能工作

@Html.ActionLink(model.catagoryModel[i].english_category_name, 
      "News", 
      new { @Model.catagoryModel[i].english_category_name, 
        @Model.catagoryModel[i].category_id }, 
      new { @class = "w8-button red" }); 
1

這看起來像它可能更適合作爲一個錨標記。

@Html.ActionLink(model.catagoryModel[i].english_category_name, 
       "News", 
       "Catagory", 
       new { @Model.catagoryModel[i].english_category_name, 
         @Model.catagoryModel[i].category_id }, 
       new { @class = "w8-button red" }); 

參見:LinkExtensions.ActionLink

樣品:

//HomeController.cs 

public class HomeController : Controller 
{ 
    public ActionResult Index() 
    { 
     return View(); 
    } 

    public ActionResult DoWork(SomeDTO dto) 
    { 
     return View("Index"); 
    } 
} 

public class SomeDTO 
{ 
    public int SomeId { get; set; } 
    public string SomeData { get; set; } 
} 

//Index.cshtml 

@Html.ActionLink("Home", "DoWork", new { SomeId = 1, SomeData = "World" }) 

//RouteConfig.cs 

public class RouteConfig 
{ 
    public static void RegisterRoutes(RouteCollection routes) 
    { 
     routes.IgnoreRoute("{resource}.axd/{*pathInfo}"); 

     routes.MapRoute(
      name: "Default", 
      url: "{controller}/{action}/{id}", 
      defaults: new { controller = "Home", 
          action = "Index", 
          id = UrlParameter.Optional } 
     ); 
    } 
} 
+0

NO即時通訊錯誤/類別/新聞?english_category_name = Blogs&category_id = 21和HTTP 404錯誤我怎麼能在控制器中獲得這些值 – Backtrack

+0

刪除'News'方法的'HttpPost'屬性。 – Romoku

+0

不,我得到的URL這樣的價值類別/新聞?english_category_name =博客&category_id = 21但stil HTTP 404錯誤 – Backtrack

相關問題