ورود

View Full Version : سوال: dropdownlist با value يكسان



amirreyhaneh
یک شنبه 01 آبان 1390, 13:53 عصر
با سلام
آيا مي توان dropdownlist داشت كه مقدار value جند آيتم آن يكسان باشد؟
من كد بصورت زير نوشتم:
<asp:DropDownList ID="DropDownList1" runat="server">
<asp:ListItem Value="3">فیزیک</asp:ListItem>
<asp:ListItem Value="3">ریاضی</asp:ListItem>
<asp:ListItem Value="2">ورزش</asp:ListItem>
<asp:ListItem Value="3">عربی</asp:ListItem>
<asp:ListItem Value="2">ادبیات</asp:ListItem>
</asp:DropDownList>

مشکل اینه وقتی جند آیتم با Value یکسان دارم,هنگامی که دکمه submit میزنم وصفحه به سرور ارسال میشه اگر فیزیک/ورزش یا عربی که دارای value یکسانی هستند انتخاب بشه بعد از برگشت صفحه از سرور فیزیک نمایش داده میشه واگر ادبیات یا ورزش انتخاب بشه ورزش رو نمایش میده(یعنی اولین آیتمی که value یکسانی با value آیتم انتخاب شده دارد را نمایش می دهد؟
با تشکر

amirreyhaneh
یک شنبه 01 آبان 1390, 19:41 عصر
با سلام
کسی که به این سوال جواب نداد:گریه:
ولی با جستجو تو اینترنت نتیجه گرفتم در asp.net مثل application نمیتوان dropdownlist با value یکسان داشت!لطفا بگین آیا این نتیجه گیری درست است یا نه؟
بازهم تشکر از تمامی دوستان

Mostafa_Dindar
یک شنبه 01 آبان 1390, 21:22 عصر
سلام ،

داشتن یک DropDown لیست با چند Value یکسان منطقی نیست . مگر اینکه از این کار دلیلی داشته باشید .

وقتی Postback میشه کنترلهای سمت سروری مقادیر خودشون رو در ViewState ذخیره میکنند که هنگام برگشت با توجه به شناسه اونها اولین آیتمی که مقدارش با مقدار ذخیره شده در ViewState ذخیره شده باشه ست میشه .

amirreyhaneh
دوشنبه 02 آبان 1390, 07:24 صبح
با سلام وتشكر از شما
حالا اگر ببخوام اينكار انجام بشه چيكار بايد بكنم؟
البته من اومدم vlaue رابه صورت 2و02و002 دادم ومشكلم حل شد.(چون بعد تبديل به Int مي كنم ونتيجه همه 2 ميشود)آيا اين راه منطقي است؟
ممنون

Mostafa_Dindar
دوشنبه 02 آبان 1390, 08:14 صبح
این روش شما هم یک جور حقه هست که برای شما جواب میده .

منطقی تر این بود که به Value ها مقدارهای متفاوتی بدهید و در صورتی که خواسته باشید مقدار متفاوتی کارهای یکسانی انجام بدهند این کار را در سمت logic برنامه انجام دهید .

ولی در هر صورت این Trick شما جواب میده

Saman Hashemi
دوشنبه 02 آبان 1390, 08:22 صبح
شما باید یه جدول داشته باشید که این دروس درونش باشد به جای Value کلید رکورد بذارید و وقتی انتخاب شد از طریق کلید رکورد تعداد واحد درس انتخاب شده را بدست بیارید...!