เมื่อเร็วๆ นี้ ฉันพบปัญหาในระหว่างการพัฒนาที่ลูกค้าขอไม่ให้มีตัวเลือกมากมาย แต่รายการเหล่านี้สามารถเลือกได้มากที่สุดเพียง 2 รายการเท่านั้น หากเลือกมากกว่า 2 รายการ จะไม่มีการรีเฟรชและผู้ใช้จะได้รับแจ้งว่า คุณเลือกมากเกินไป และหนึ่งในนั้นจะถูกลบแบบสุ่ม ฉันค้นหาบทความออนไลน์มากมาย แต่ไม่พบตัวอย่างที่เกี่ยวข้อง ดังนั้นฉันจึงใช้ความพยายามอย่างมากในการเขียนด้วยตัวเองและตอนนี้แบ่งปันกับทุกคน ฉัน! ฉันหวังว่าผู้เชี่ยวชาญจะให้คำแนะนำที่มีค่ามากกว่านี้แก่ฉัน
ได้ จริงๆ แล้วขั้นตอนแรกคือ CheckBoxListText.aspx
<HEAD>
<TITLE>อินสแตนซ์ CheckBoxList</TITLE>
</HEAD>
<SCRIPT language="จาวาสคริปต์">
ฟังก์ชั่น SetCheckBoxState (str)
-
o = document.getElementsByTagName("อินพุต")
//o = from1.cbYyjslscly;
วาลวาล=0;
สำหรับ(i=0;i<o.length;i++)
-
ถ้า (o[i].type=="ช่องทำเครื่องหมาย" && o[i].ตรวจสอบ && o[i].name==str)
-
//alert(o[i].value)
วาล = วาล + 1;
-
ถ้า(วาล > 2)
-
alert('รายการที่คุณเลือกสามารถอยู่ภายใน 2 เท่านั้น!')
o[i].ตรวจสอบ=เท็จ;
กลับ;
}
}
// แจ้งเตือน (วาล)
-
</สคริปต์>
</หัว>
<body MS_POSITIONING="GridLayout">
<form id="Form1" method="post" runat="server">
<asp:CheckBoxList id="CheckBoxList1" runat="เซิร์ฟเวอร์">
<asp:ListItem Value="NET">NET</asp:ListItem>
<asp:ListItem Value="JAVA">JAVA</asp:ListItem>
<asp:ListItem Value="VB">VB</asp:ListItem>
</asp:CheckBoxList>
</form>
</body>
</html>
checkBoxList1.Attributes.Add("OnClick","SetCheckBoxState('CheckBoxList1');");
ในไฟล์การจัดการพื้นหลัง
และมันก็โอเค!