2017-05-04 108 views
0

我正在關注本教程:https://www.codeproject.com/Articles/424461/Implementing-Consuming-ASP-NET-WEB-API-from-JQueryMVC 5 WEB API post

幫助我實現我的web API。但我有些不同。這是我的索引:

@model IEnumerable<dsr_vaja1.Models.Kosarica.Kosarica> 
@{ 
    ViewBag.Title = "kosarica"; 
    Layout = "~/Views/Shared/MasterStran.cshtml"; 
} 


<div id="accordion"> 
    <h3>Igre</h3> 
    <div> 
     <table class="table table-hover "> 
      <tr> 
       <th> 
        @Html.DisplayNameFor(model => model.ime_igre) 
       </th> 
       <th> 
        @Html.DisplayNameFor(model => model.cena_igre) 
       </th> 

      </tr> 
      @foreach (var item in Model) 
      { 
       <tr> 
        <td> 
         @Html.DisplayFor(modelItem => item.ime_igre) 
        </td> 
        <td> 
         @Html.DisplayFor(modelItem => item.cena_igre) 
        </td> 
       </tr> 
      } 
     </table> 
     <button onclick="AddEmployee();return false;">Add Employee</button> 


    </div> 
</div> 

正如你所看到的,在這裏我有一個名爲Kosarica的項目列表。這是我的網頁API:

public void Post(Nakup nakup) 
    { 
     nakup.Id = 1; 
     nc.Nakupi.Add(nakup); 
     nc.SaveChanges(); 
    } 

我的Web API,一切工作完全沒問題,現在我只是想知道我怎麼會用這個函數:

function AddGame() { 
     jQuery.support.cors = true; 
     var game = { 
      ID: model.id, 
      ime_igre: model.ime_igre, 
     }; 

     $.ajax({ 
      url: 'http://localhost:8080/API_SVC/api/EmployeeAPI', 
      type: 'POST', 
      data:JSON.stringify(employee), 
      contentType: "application/json;charset=utf-8", 
      success: function (data) { 
       WriteResponse(data); 
      }, 
      error: function (x, y, z) { 
       alert(x + '\n' + y + '\n' + z); 
      } 
     }); 
    } 

FOR ALL中的項目用戶點擊按鈕後列出。

**編輯

是不是有一個更簡單的方法來做到這一點?我剛剛意識到第一行代碼是一個列表 @model IEnumerable

model是一個對象列表。正如你可以在foreach循環中看到的那樣,我遍歷模型中的項目。那麼我能不能簡單地將模型傳遞給j​​query函數?

回答

0

創建一個JavaScript功能,例如:
功能AddGamesForAllItems(){

//通過jQuery選擇選擇表Here

//在表中的元素環Here

//調用AddGame函數,通過參數表傳遞所需的元素...你必須在裏面聲明參數AddGame函數

}

當你需要時調用AddGamesForAllItems函數,例如:Button click event。

希望它可以幫助!

+0

是不是有一個更簡單的方法來做到這一點?我剛剛意識到第一行代碼是列表 @model IEnumerable model是一個對象列表。正如你可以在foreach循環中看到的那樣,我遍歷模型中的項目。那麼我能不能簡單地將模型傳遞給j​​query函數? – averagejoex

+0

不要忘記,前綴爲@前綴的所有代碼都是在頁面(html)發送給客戶端之前,在服務器端執行並呈現的代碼。所以,你不能像使用JavaScript一樣使用你的模型... –