سلام دوستان .
چطوری میتونم در view مقدار درون ViewBag م رو که از اکشن دریافت کردم به صورت jQuery تغییر بدم .
<li class="total-price"> مبلغ قابل پرداخت : <span> @ViewBag.EndPrice تومان </span></li>
مثلا این ViewBag رو بگیرم و چند درصد ازش کم کنم و دوباره نمایشش بدم ؟
@{ int p = (int)ViewBag.EndPrice; p+=10; } <li class="total-price"> مبلغ قابل پرداخت :@p <span> تومان </span></li>
ممنونم استاد . اما اگه بخوام اون مقدار رو درون یه <script></script> تغییر بدم مد نظرمه .
<script> var price = @ViewBag.EndPrice; function SetDiscount(percent){ return (price*percent/100); } </script>
ممنون از شما جناب نصیری .
یه مشکل کوچیک دگ هم دارم . این که میخام با کلیک روی لینکی در رویداد onclick اون مقدار تکست باکس مورد نظرم رو بفرستم به تابع درون script م
<input type="text" class=" col-md-4 col-sm-4 col-xs-4 form-control" placeholder="کد تخفیف" name="buyCode" id="buyCode"/> <a class="btn btn-danger " onclick="CheckCode($('#buyCode').val)">تخفیف</a>
به این صورت نوشتم اما مقدار null رو میفرسته ینی در اصل مقداری اصلا نمیفرسته .
ابن کد رو هم تست کردم جواب نمیده :
onclick="CheckCode(document.getElementById('buyCode').value
ممنون
<input type="text" class="col-md-4 col-sm-4 col-xs-4 form-control" placeholder="کد تخفیف" name="buyCode" id="buyCode"/> <a class="btn btn-danger" onclick="CheckCode($('#buyCode').val())">تخفیف</a>
باز هم مقدار null رو میفرسته
عذرخواهی میکنم .
ببینین جناب نصیری من میخام همین مقدار درون تکست باکس رو بفرستم سمت اکشن با JQuery و اون ور بررسیش کنم ببینم مقدارش درون بانکم موجوده یانه . اما زمانی که فرستاده میشه اون سمت مقدارس Null میشه
<input type="text" class=" col-md-4 col-sm-4 col-xs-4 form-control" placeholder="کد تخفیف" name="buyCode" id="buyCode"/> <a class="btn btn-danger " onclick="CheckCode($('#buyCode').val())">تخفیف</a> <script> function CheckCode(code) { $.get("/ShopCartPanel/CheckBuyCode/" + code, function (result) { if (result == 1) { alert("ok"); } else { alert("No"); } }); } </script> public int CheckBuyCode(int value) { int success = 1; int danger = 2; var q = _iOrdersRepo.GetAllBuyCodes().SingleOrDefault(a => a.BuyCodeName == value); if (q != null) return success; return danger; }
متد CheckBuyCode درون کنترلرم رو که تریس میکنم مقدار ورودیش null هست
<script> function CheckCode(code) { $.get("/ShopCartPanel/CheckBuyCode?value=" + code, function (result) { if (result == 1) { alert("ok"); } else { alert("No"); } }); } </script>
این روش رو هم تست کنید.اگر جواب نداد روش پایین :
$.ajax({ type: "Get", url: '/Home/CheckBuyCode?value=' + code, contentType: "application/json; charset=utf-8", dataType: "json", success: function (result) { }, error: function (error) { } });
بالاییه جواب داد . یه دنیا ممنون
جنای نصیری مقدار درون ViewBag.EndPrice م رو میتونم عوض کنم با jquery ؟
ینی بعد از اینکه میزان تخفیف رو محاسبه کردم مقدار درون ViewBag.EndPrice رو که داخلش مبلغ خرید بوده رو آپدیت کنم که همون مبلغ با احتساب تخفیف هست .
ممنون
خب چه نیاز به jquery هست؟؟
همون داخل اکشن CheckBuyCode بعد از محاسبه تخفیف, ViewBag را تغییر بدید بهتر نست؟
فرمایش شما صحیحه اما من داخل اکشنم مقدار ViewBag رو دسترسی ندارم . باید مقدار ViewBag رو بفرستم به اکشنم
کدم مشکل داره . چون کد script م که اجرا میشه مقدار result رو false در نظر میگیره
میخوام دو تا مقدار رو بفرستم سمت اکشن یکی همون مقدار درون تکست باکس و دیگری مقدار ViewBag.EndPrice
<section class="BuyCode"> <input type="text" class=" col-md-4 col-sm-4 col-xs-4 form-control" placeholder="کد تخفیف" name="buyCode" id="buyCode" /> <a class="btn btn-danger " onclick="CheckCode($('#buyCode').val(),@ViewBag.EndPrice)">تخفیف</a> </section> <script> var price =@ViewBag.EndPrice; function CheckCode(code,id) { $.get("/ShopCartPanel/CheckBuyCode?value=" + code & "?value2=" + id, function (result) { if (result == 1) { var result = (price - ((price * 4) / 100)); $("#endPrice").html('مبلغ قابل پرداخت : ' + result + ' تومان '); $("#EndPriceHidden").val(result); alert($("#EndPriceHidden").val()); return result; } else { alert("No"); } }); } </script> public int CheckBuyCode(int value,int value2) { int success = 1; int danger = 2; var q=_iOrdersRepo.GetAllBuyCodes().SingleOrDefault(a => a.BuyCodeName == value); if (q != null) return success; return danger; }
ممنونم
هیچ کاربری تا کنون از این پست تشکر نکرده است
با ما تماس بگیرید تا در این مسیر همراهتان باشیم :)