原创 Repeater radio 单选和多选混合_.NET_编程开发_程序员俱乐部

中国优秀的程序员网站程序员频道CXYCLUB技术地图
热搜:
更多>>
 
您所在的位置: 程序员俱乐部 > 编程开发 > .NET > 原创 Repeater radio 单选和多选混合

原创 Repeater radio 单选和多选混合

 2015/3/20 2:50:45  嘿嘿v8v  程序员俱乐部  我要评论(0)
  • 摘要:希望高手朋友给我留下美好的意见,在此先感谢您!前台代码repeater:1<scriptsrc="../Scripts/jquery-1.9.1.js"></script>2<scripttype="text/javascript">34functionSelectOption(selopt){5vartempopt=$("#selopts").val();6if(tempopt.indexOf(selopt.lang)!=-1)
  • 标签:原创 Repeater RAD

希望高手朋友给我留下美好的意见,在此先感谢您!

前台代码repeater:

class="code_img_closed" src="/Upload/Images/2015032002/0015B68B3C38AA5B.gif" alt="" />logs_code_hide('4b62b2d2-aabd-4c89-90a4-46267f77e59d',event)" src="/Upload/Images/2015032002/2B1B950FA3DF188F.gif" alt="" />
 1     <script src="../Scripts/jquery-1.9.1.js"></script>
 2     <script type="text/javascript">
 3 
 4         function SelectOption(selopt) {
 5             var tempopt = $("#selopts").val();
 6             if (tempopt.indexOf(selopt.lang) != -1) {
 7 
 8                 var temp1 = tempopt.split(',');
 9                 for (var i = 0; i < temp1.length; i++) {
10                     if (temp1[i].indexOf(selopt.lang) !=-1) {
11                         temp1[i] = selopt.lang + ":" + selopt.value;
12                     }
13                 }
14                 var data = "";
15                 for (var i = 0; i < temp1.length; i++) {
16                     if (temp1[i] != '') {
17                         data += temp1[i] + ",";
18                     }
19                     
20                 }
21                 $("#selopts").val(data);
22                 //alert($("#selopts").val());
23             }
24             else {
25                 tempopt += selopt.lang + ":";
26                 tempopt += selopt.value + ",";
27                 $("#selopts").val(tempopt);
28                 //alert($("#selopts").val()+'bbbbbbbbbb');
29             }
30         }
31 
32 
33 
34         function SelectOption1(selopt) {
35             if (selopt.checked = true) {
36                 var tempopt = $("#selopts").val();
37                 if (tempopt.indexOf(selopt.lang + ":" + selopt.value + ",") != -1) {
38                     //alert(selopt.lang + ":" + selopt.value + ",");
39                     var temp = tempopt.replace(selopt.lang + ":" + selopt.value + ",", " ");
40                     selopt.checked = false;
41                     $("#selopts").val(temp);
42                    // alert($("#selopts").val());
43                 }
44                 else {
45                     var tempopt = $("#selopts").val();
46                     tempopt += selopt.lang + ":";
47                     tempopt += selopt.value + ",";
48                     $("#selopts").val(tempopt);
49                 }
50             }
51         }
52     </script>
View Code
 1   <table>
 2             <asp:Repeater ID="QuestionsInfo" runat="server">
 3                 <HeaderTemplate>
 4                     <tr><th>题目:</th></tr>
 5                 </HeaderTemplate>
 6                 <ItemTemplate>
 7                    <ItemTemplate>
 8                       
 9                    <tr>
10                       <%-- <td><input type="radio"  name='<%#Eval("ISMultiple")%>' onclick="SelectOption(this)"  value='<%#Eval("OptionCode")%>' /></td>--%>
11                       <td><%#Eval("First")%></td>
12                         <td><%#Eval("second")%></td>
13                       <%--  <td><input type="radio" name='<%#Eval("ISMultiple")%>' onclick="SelectOption(this)"  value='<%#Eval("OptionCode")%>' /></td>--%>
14                         
15                     </tr>
16                 </ItemTemplate>
17                 </ItemTemplate>
18             </asp:Repeater>
19         </table>
20 
21                 <div stype="float:right">
22                     <asp:LinkButton ID="lkbtnOK" runat="server" OnClick="lkbtnOK_Click">确定</asp:LinkButton>
23                 </div>
24 
25         <input type="hidden" runat="server" id="selopts"/>
View Code

后台代码

  1   public void BindQuestion(string ExamTitleCode, string ExamTitle)
  2         {
  3 
  4             List<temp> list = new List<temp>();
  5             // temp temp = new WebApplication1.temp();
  6 
  7 
  8             //获得所有题目
  9             var Questionssql = "select * from ";
 10            
 11             var Questionsdt = helps.GetDataTable(Questionssql );
 12             var QuestionsCount = Questionsdt.Rows.Count;
 13 
 14 
 15             for (int i = 0; i < QuestionsCount; i++)
 16             {
 17 
 18                 temp temp = new temp();
 19                 temp.First = Questionsdt.Rows[i]["Questions"].ToString();
 20                 temp.Second = "";
 21                 list.Add(temp);
 22 
 23                 var QuestionsID = Questionsdt.Rows[i]["QuestionsID"].ToString();
 24                 var MultipleChoice = Questionsdt.Rows[i]["MultipleChoice"].ToString();
 25 
 26                 //题目的所有选项
 27                 var AllOptionssql = "select * from Questions_Option where QuestionsID='" + QuestionsID + "'";
 28                 var AllOptiondt = helps.GetDataTable(AllOptionssql);
 29 
 30                 var AllOptionCount = AllOptiondt.Rows.Count;
 31 
 32 
 33                 for (int j = 0; j < AllOptionCount; j++)
 34                 {
 35 
 36                     temp = new temp();
 37                     var OptionCode = AllOptiondt.Rows[j]["OptionCode"].ToString();
 38                     var OptionName = AllOptiondt.Rows[j]["OptionName"].ToString();
 39                     //var Option
 40                     if (MultipleChoice == "1")
 41                     {
 42                         temp.First = "<input type='radio' onclick='SelectOption1(this)' lang='" + QuestionsID + "' value='" + OptionCode + "' />";
 43                     }
 44                     else
 45                     {
 46                         temp.First = "<input type='radio' name='" + QuestionsID + "' lang='" + QuestionsID + "' onclick='SelectOption(this)' value='" + OptionCode + "' />";
 47                     }
 48                     temp.Second = OptionName;
 49                     list.Add(temp);
 50                 }
 51 
 52 
 53 
 54             }
 55             QuestionsInfo.DataSource = ToDataTable(list);
 56             QuestionsInfo.DataBind();
 57         }
 58 
 59         /// <summary>
 60         ///集合类转换成DataTable
 61         /// </summary>
 62         /// <param name="list">集合</param>
 63         /// <returns></returns>
 64         public static DataTable ToDataTable(IList list)
 65         {
 66             DataTable result = new DataTable();
 67             if (list.Count > 0)
 68             {
 69                 PropertyInfo[] propertys = list[0].GetType().GetProperties();
 70                 foreach (PropertyInfo pi in propertys)
 71                 {
 72                     result.Columns.Add(pi.Name, pi.PropertyType);
 73                 }
 74 
 75                 for (int i = 0; i < list.Count; i++)
 76                 {
 77                     ArrayList tempList = new ArrayList();
 78                     foreach (PropertyInfo pi in propertys)
 79                     {
 80                         object obj = pi.GetValue(list[i], null);
 81                         tempList.Add(obj);
 82                     }
 83                     object[] array = tempList.ToArray();
 84                     result.LoadDataRow(array, true);
 85                 }
 86             }
 87             return result;
 88         }
 89 
 90         List<temp> list = new List<temp>();
 91         protected void lkbtnOK_Click(object sender, EventArgs e)
 92         {
 93             var AnswerOptions = this.selopts.Value;
 94             string[] str=AnswerOptions.Split(',');
 95 
 96             
 97             for (var i = 0; i < str.Length; i++)
 98             {
 99                 if (str[i] != "")
100                 {
101                     temp tp = new WebApplication1.temp();
102                     var tempstr = str[i].Split(':');
103                     if (list.Count == 0)
104                     {
105                         tp.First = tempstr[0];
106                         tp.Second = tempstr[1];
107                         list.Add(tp);
108                     }
109                     else
110                     {
111                         for (var j = 0; j < list.Count; j++)
112                         {
113                             if (tempstr[0] == list[j].First)
114                             {
115                                 list[j].Second = list[j].Second + "," + tempstr[1];
116                                 break;
117                             }
118                             else if (j == list.Count - 1)
119                             {
120                                 tp.First = tempstr[0];
121                                 tp.Second = tempstr[1];
122                                 list.Add(tp);
123                                 break;
124                             }
125                         }
126                     }
127 
128                     }
129                 }
130 
131 
132             for (int i = 0; i < list.Count; i++)
133             {
134                 SaveData(list[i].First, StrSort(list[i].Second));
135             }
136             InsertFinsh();
137 
138 
139             // InsertFinsh();
140             }
141 
142 
143         public String StrSort(string Str)
144         {
145             var tempOption = Str.TrimEnd(',').Split(',');
146             var text = "";
147             if (tempOption.Length > 1)
148             {
149                 Array.Sort(tempOption);
150             }
151             for (int i = 0; i < tempOption.Length; i++)
152             {
153                 if (i != tempOption.Length - 1)
154                 {
155                     text += tempOption[i] + ",";
156                 }
157                 else
158                 {
159                     text += tempOption[i];
160                 }
161             }
162             return text;
163         }
View Code

 

发表评论
用户名: 匿名