如何获取逗号delimated(拆分)字符串值并将其传递给控制器
How do i get comma delimated (split) string value and pass it to a controller?
我有一个名为"产品"的SQL表,在该表中,我有一个名为AvailableSizes
NVARCHAR
类型的字段,其中包含产品的所有可用尺寸。然后,我将AvailableSizes
字段的值分开,如下所示:
<p>
<b>Available Sizes</b>
@{
var Availablesize = Model.AvailableSizes.Split(',');
}
@foreach (var item in Availablesize)
{
<div class="circleBase type2">@item</div>
}
</p>
正如您在上面的代码中看到的那样,我将这些数据值放在侧圆中,现在我希望如果有人单击其中一个包含数据在其中的圆圈,则应选择该值,然后如果用户单击 AddToCart 按钮,则应将其传递给我的控制器操作如下:
public RedirectToRouteResult AddToCart(Cart cart, int productId, string returnUrl)
{
Product product = repository.Products.FirstOrDefault(p => p.ProductID == productId);
if (product != null)
{
cart.AddItem(product, 1);
}
return RedirectToAction("Index", new { returnUrl });
}
这是"添加到购物车"按钮背后的代码:
@using (Html.BeginForm("AddToCart", "Cart", new { ProductID = item.ProductID}))
{
@Html.Hidden("returnUrl", Request.Url.PathAndQuery)
<input type="submit" class="btn btn-default add-to-cart" value="Add to cart" />
}
就我刚接触MVC而言,我需要一个明确的解决方案,提前感谢。
最适合您的方法是使用另一个隐藏的帮助程序来选择大小,并通过在 Jquery 中单击所选Availablesize
的事件来填充该帮助程序。然后,您可以将其传递给控制器AddToCart
操作。
当用户选择圆圈时,您可以添加类,然后当用户使用 jquery 单击添加购物车按钮时,首先获取选定的圆值并将数据传递给操作方法中的控制器。
下面是理解逻辑的示例代码
$(document).ready(function(){
$('.circleBase ').click(function(){
$(this).addClass('abc');
})
$('.btn').click(function(){
var result = $('.abc').val();
//
and call your controller
});
});
类"ABC"是突出显示所选项目的类。
相关文章:
- 在指令控制器中使用$attrs时出现问题
- 有没有任何方法可以将控制器从文件加载到ui路由器$stateProvider中
- 从控制器返回后Ajax启动事件激发
- 获取@ResponseBody的一部分作为主干和Spring MVC控制器之间的参数
- 如何在单击复选框后调用控制器方法
- 在控制器和数据对象之间同步数据
- 将Javascript数组发送到控制器ASP.NET MVC
- 拆分单词jquery
- 拆分文本以每隔n个字符添加一行新行,并注意空格
- 角度控制器结构
- 如何在Jquery中发布后将值从视图返回到控制器
- 将值从html传递到AngularJS控制器
- 从我的控制器返回一个不同于200的代码以触发ajax错误,这被认为是一种好的做法吗
- 从控制器继承了隔离的作用域以生成可重用的指令
- 将AngularJS控制器拆分为多个文件
- angular js:将一个大型控制器拆分为多个文件
- 如何获取逗号delimated(拆分)字符串值并将其传递给控制器
- 如何正确拆分控制器的模型
- AngularJS:如何将一个长控制器拆分为多个模块
- 为一个控制器拆分HTML组件会导致控制器停止工作