PDA

View Full Version : مشکل با کلیک روی آیتم



nimamidos
دوشنبه 06 بهمن 1393, 08:50 صبح
سلام دوستان

من یه مشکلی دارم که ممنون میشم کمکم کنید

یه پروژه طراحی کردیم که خرید اینترنتی قراره انجام بشه تو قسمتی از سایت ولی مشکل اینه که وقتی کاربر روی اضافه کردن مورد کلیک میکنه به تعداد کلیک جنس خریداری شده به قسمت سفارشات اضافه میشه. من میخوام یه کاری کنم وقتی کاربر هر چند بار دکمه سفارش رو کلیک کرد فقط یک بار سفارش اضافه بشه یا به عبارتی به باتن به تعداد کلیک حساس نباشه. چه کدی باید اضافه کنم؟

اگه رفرنس هم بدین مطالعه می کنم.

خیلی ممنون

d_derakhshani
دوشنبه 06 بهمن 1393, 09:12 صبح
خوب شما لیست سفارشات(سبد خرید) رو دارید. تمامی آیتم ها هم یک کد منحصر به فرد دارند، قبل اضافه کردن بررسی کنید کد مورد نظر در لیست موجود هست یا خیر اگه بود دیگه اضافه نکنید و بازخورد مناسب هم به کاربر بدید.

nimamidos
جمعه 10 بهمن 1393, 15:40 عصر
کسی کد جاوا اسکریپت غیرفعال کردن دکمه بعد از یه بار کلیک رو داره؟

nimamidos
جمعه 10 بهمن 1393, 20:18 عصر
واقعا این مشکل کلافه کرده. کسی راهی به نظرش نمیرسه؟
استفاده از Button1.Enabled = false و ... که باید یک بار پست بک بخوره جواب گو نیست

باید کاری کرد که قبل از پست بک وقتی یه نفر دو بار کلیک کرد این مشکل پیش نیاد

بیتا حکمت
جمعه 10 بهمن 1393, 21:46 عصر
سلام . ساده است که . کافیه دکمه رو بزارین داخل اپدیت پنل . هر چند روش بهتر اینکه با هر کلیک محصول اضافه شه و اگر مشتری نخواست تعداد بیشتری بخره اون سفارش رو کنسل کنه .


<asp:UpdatePanel ID="UpdatePanel1" runat="server">
<ContentTemplate>
<asp:Button ID="Button1" runat="server" Text="Button" />
</ContentTemplate>
</asp:UpdatePanel>



کد سی شارپ / تو رویداد کیلک اش بنویس ..




Button1.Enabled = false;

keiv@n
جمعه 10 بهمن 1393, 21:48 عصر
واقعا این مشکل کلافه کرده. کسی راهی به نظرش نمیرسه؟
استفاده از Button1.Enabled = false و ... که باید یک بار پست بک بخوره جواب گو نیست

باید کاری کرد که قبل از پست بک وقتی یه نفر دو بار کلیک کرد این مشکل پیش نیاد

یه راه حل خیلی ضایع : استفاده از بوت استرپ


<asp:Button CssClass="btn btn-danger" OnClick="Button1_Click" ID="Button1" runat="server" Text="Button" />



protected void Button1_Click(object sender, EventArgs e)
{
Button1.CssClass = "btn btn-danger disabled";
}

nimamidos
دوشنبه 13 بهمن 1393, 00:16 صبح
سلام . ساده است که . کافیه دکمه رو بزارین داخل اپدیت پنل . هر چند روش بهتر اینکه با هر کلیک محصول اضافه شه و اگر مشتری نخواست تعداد بیشتری بخره اون سفارش رو کنسل کنه .



خیلی ممنون دوستان. ولی واقعیتش جواب نگرفتم...
کدم رو میذارم شاید شما فهمیدین مشکل کجاست که عین خیال C#‎‎‎‎‎‎ هم نیست کدهایی که نوشتم!


<asp:ScriptManager ID="ScriptManager" runat="server" />

<asp:UpdatePanel ID="UpdatePanel1" runat="server">
<ContentTemplate>
<fieldset>
<asp:Button ID="Button1" CssClass="buttons" runat="server" Text="ثبت نهائی" OnClick="Button1_Click"></asp:Button>
<script type="text/C#‎‎‎‎‎‎" runat="server">
protected void Button1_Click(object sender, EventArgs e)
{
// Simulating the background processing logic.
if (chk1.Checked )
{
Button1.Enabled = false;
}
else
{
ltmsg.Text = "<div class=\"warning_message\">پذیرفتن قوانین و مقررات الزامی می باشد.</div>";


}
}
</script>
<fieldset>
</ContentTemplate>
</asp:UpdatePanel>



یه راه حل خیلی ضایع : استفاده از بوت استرپ

از اونم جواب نگرفتم! بدون چک باکس حداقل Attributes رو تشخیص میده ولی وقتی داخل شرط if می ذارم یه alert ساده رو هم نشون نمیده!