استفاده از یک actionresult در event یک input number
من یک input از تایپ number دارم که داخل یک پیش فاکتور قرار داره ،میخوام وقتی مشتری تعداد محصول رو تایپ کرد ،جمع قیمت محصولات متناسب با تعداد محصولات تغییر کنه،این کد من هست.
کد HTML:
<td>
<input type="number" id="inputnumber" value="@item.ProductCount" min="0" style="width: 70px;"
onchange="ChangeCount(@item.ProductId)">
</td>
و این کنترلر من هست.
public ActionResult InputNumber(int id)
{
List<ShowShoppingCart> shopcart = new List<ShowShoppingCart>();
List<ShopCartItem> shop = Session["ShoppingCart"] as List<ShopCartItem>;
int index = shop.FindIndex(s => s.ProductId == id);
shop[index].ProductCount = shopcart.Count;
if (shop[index].ProductCount == 0)
{
shop.Remove(shop[index]);
}
Session["ShoppingCart"] = shop;
return RedirectToAction("Index");
}
و اینها هم کلاسها هستن:
public class ShowShoppingCart
{
[Key]
public int ProductId { get; set; }
[Display(Name ="نام محصول")]
public string ProductTitle { get; set; }
[Display(Name = "تعداد")]
public int ProductCount { get; set; }
[Display(Name = "مبلغ")]
public int? ProductPrice { get; set; }
[Display(Name = "جمع ")]
public int? Sum { get; set; }
[Display(Name = "جمع با تخفیف ")]
public int? SumWithDiscount { get; set; }
[Display(Name = "جمع کل ")]
public int? TotalSum { get; set; }
[Display(Name = "جمع کل با تخفیف ")]
public int? TotalsumWithDiscount { get; set; }
public int DiscountPercent { get; set; }
}
public class ShopCartItem
{
public int ProductId { get; set; }
public int ProductCount { get; set; }
}
@section Script
{
<script type="text/javascript">
function ChangeCount(id) {
$(document).ready(function () {
$.ajax({
url: "/ShoppingCart/InputNumber",
type: "Get",
data: { id: id }
}).done(function (result) {
$('#CountShopCart').html(result);
//$('#inputnumber').html(result);
});
});
}
</script>
}
وقتی عددی رو تایپ میکنم هیچ اتفاقی نمیفته ؟ چرا؟
نقل قول: استفاده از یک actionresult در event یک input number
سلام
شما باید از Jquery Ajax استفاده کنید و اینکه به طور مستقیم در رویداد یک المان اکشن فراخونی کنید اشتباهه
نقل قول: استفاده از یک actionresult در event یک input number
نقل قول:
نوشته شده توسط
mohsen.j1990
سلام
شما باید از Jquery Ajax استفاده کنید و اینکه به طور مستقیم در رویداد یک المان اکشن فراخونی کنید اشتباهه
میشه لطفا راهنمایی کنید؟ ممنون
نقل قول: استفاده از یک actionresult در event یک input number
شما برای محاسبه جمع قیمت اصلا نیازی ندارید که کد سمت سرور بنویسید
میتونید با jquery سمت ui محاسبش کنید
نقل قول: استفاده از یک actionresult در event یک input number
نقل قول:
نوشته شده توسط
mohsen.j1990
شما برای محاسبه جمع قیمت اصلا نیازی ندارید که کد سمت سرور بنویسید
میتونید با jquery سمت ui محاسبش کنید
مشکل من انجاست که نمیدونم تعداد کالا ها رو چطوری ثبت کنم؟ تعداد کالاها وقتی که عوضش میکنم هیچ تغییری نمیکنه:ناراحت::ناراحت:
نقل قول: استفاده از یک actionresult در event یک input number
آیدی تگرامتونو بفرستید تا مشکل رو دقیقتر توضیح بدبد
نقل قول: استفاده از یک actionresult در event یک input number
نقل قول:
نوشته شده توسط
mohsen.j1990
آیدی تگرامتونو بفرستید تا مشکل رو دقیقتر توضیح بدبد
براتون یک پیام فرستادم
نقل قول: استفاده از یک actionresult در event یک input number
من این اسکریپت رو نوشتم ولی وقتی مقدار یک input رو تغییر میدم،مقدار جمع تمام سطرها تغییر میکنه،در حالی که من میخوام وقتی کاربر مقداری رو به عنوان تعداد محصول وارد کرد،جمع هزینه های مربوط به همون محصول در همون سطر نمایش داده بشه. این اسکریپت من هست.
function MySum() {
$('.input').each(function () {
var percent = $('.productDiscount').attr("value");
var price = $('.productPrice').attr("value");
var productcount = document.getElementById('count').value;
var sum = productcount * price;
var sumwithdiscount = sum - ((sum * percent) / 100);
$('.Sum').html(sum);
$('.SumWithDiscount').html(sumwithdiscount);
});