html - 如何通过 asp.net 中的 web api 发送静态 html 数据?
问题描述
我有一个用 ASP.NET 开发的产品页面,我对产品的值进行了硬编码,目前只是前端。在此页面上,我有产品信息,例如产品名称和价格,以及页面上这些项目下方的添加到购物车按钮。我有一个网络 api,我想通过它发送这个产品信息。出于测试目的,它在我使用输入表单时有效,但我想知道如何在单击按钮时发送这些静态信息,例如名称和价格。下面是我的html页面
<div class="col-md-3 col-sm-3 col-xs-6" style="margin-bottom: 8px;">
<div class="img-thumbnail product-item" style="height: 300px;">
<img class="img-fluid" title="Click to View Product detail" style="cursor: pointer; height: 160px; width: 100%;" src="~/Images/SamsungNote.JPG" />
<div class="caption">
<h5>Samsung note 10 plus</h5>
<p>€ 1071.28</p>
<p>
Available <button class="pull-right" href="#"><i class="fa fa-shopping-cart"> Add to cart</i></button>
</p>
<div class="product-item-badge">New</div>
</div>
</div>
</div>
在我的 HomeController 中,我有以下内容。就像我之前说的,这适用于表单,但是当我单击“添加到购物车”按钮时,有什么方法可以发送此产品信息?
[HttpPost]
public ActionResult AddToCart(Product product)
{
using (var client = new HttpClient())
{
client.BaseAddress = new Uri("http://localhost:60036/");
var content = new StringContent(
JsonConvert.SerializeObject(product),
Encoding.UTF8,
MediaTypeNames.Application.Json);
var postTask = client.PostAsync("api/Product", content);
var result = postTask.Result;
if (result.IsSuccessStatusCode)
{
return this.RedirectToAction("Home");
}
}
this.ModelState.AddModelError(string.Empty, "Server error. Please contact your administrator");
return RedirectToAction("Privacy", "Home");
}
解决方案
使用一些 JS 库(如 jQuery)来做 AJAX。
例如:
$.ajax({
url: 'http://yourdomain/Home/AddToCart',
data: {'ProductName': 'Samsung', 'Price': 1071.28},
type: "POST",
dataType: "json",
contentType: "application/json;charset=utf-8",
success: function(returnData){
console.log(returnData);
},
error: function(xhr, ajaxOptions, thrownError){
console.log(xhr.status);
console.log(thrownError);
}
});
推荐阅读
- php - 在生成的 PHP/CSS 树视图中,如何将输入保存在列中?
- mysql - 对 Django 的 MYSQL 查询
- python - 在从 ORM 数据中选择 ModelChoiceField 中设置“值”
- diagramming - 属性可以与数据流图上的实体标题一起使用吗?
- php - 来自我的 4866 行长的连接 php 文件的突然 Webkitformboundary 错误
- ionic-framework - 如何在 ionic3 中设置个人资料图片功能
- excel - Excel - 计算列表中的项目,忽略文本但计算数字?
- c# - 如何从另一个列表中的列表中查找任何 ID
- reactjs - 使用字符串变量加载图像(需要)不起作用
- android - ListView 与 ImageView - 如何将不同的链接放置到列表中的每个 ImageView