动态创建控件asp.net C#
我有一个网站,你可以参加多项选择测验。测验中的每个问题可能有1到5个答案。我很难弄清楚如何根据有多少答案动态地进行测验控制。我可以很容易地得到答案的数量。动态创建控件asp.net C#,c#,asp.net,.net,webforms,C#,Asp.net,.net,Webforms,我有一个网站,你可以参加多项选择测验。测验中的每个问题可能有1到5个答案。我很难弄清楚如何根据有多少答案动态地进行测验控制。我可以很容易地得到答案的数量。 所以,如果有3个答案,我需要生成3个文本框(只读)和相应的单选按钮列表。然后,当用户按下按钮时,提交数据并加载下一个问题。我正试图在C#中完成这一切。我曾经做过完全相同的操作,但只动态创建文本框。我正在复制我的代码(现在正忙着进行更改),请根据需要编辑: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML
所以,如果有3个答案,我需要生成3个文本框(只读)和相应的单选按钮列表。然后,当用户按下按钮时,提交数据并加载下一个问题。我正试图在C#中完成这一切。我曾经做过完全相同的操作,但只动态创建文本框。我正在复制我的代码(现在正忙着进行更改),请根据需要编辑:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title></title>
</script>
</head>
<script type="text/javascript" src="http://code.jquery.com/jquery.min.js"></script>
<script type="text/javascript">
function GetDynamicTextBox(value)
{
return '<input name = "DynamicTextBox" class="dynamic" type="text" value = "' + "mymonthname" + '" />' +
'<input name = "DynamicTextBox1" class="dynamic" type="text" value = "' + "myYearname" + '" />' +
'<input type="button" value="Remove" onclick = "RemoveTextBox(this)" />'
}
function AddTextBox()
{
var div = document.createElement('DIV');
div.innerHTML = GetDynamicTextBox("");
document.getElementById("TextBoxContainer").appendChild(div);
}
function RemoveTextBox(div)
{
document.getElementById("TextBoxContainer").removeChild(div.parentNode);
}
// function RecreateDynamicTextboxes() {
// var values = "vishal";
// if (values != null) {
// var html = "";
// for (var i = 0; i < values.length; i++) {
// html += "<div>" + GetDynamicTextBox(values[i]) + "</div>";
// }
// document.getElementById("TextBoxContainer").innerHTML = html;
// }
// }
</script>
</head>
<body>
<form id="form1" runat="server">
<div id="TextBoxContainer" style="text-align: center;" class="step">
</div>
<div>
<div style="text-align: center;" id="setPrinteraxcis1">
<input id="btnAdd" type="button" value="Add" onclick="AddTextBox()" class="ANPClass" />
</div>
</div>
</form>
</body>
其中MultipleId是一个数组列表:
public ArrayList MultipleId = new ArrayList();
p.S.
我根据一些标准阅读了您的需求,然后您可以在AddTextbox方法和循环中使用计数器来创建所需数量的textbox。如何静态地执行此操作?发布这些代码可以让我们更好地了解您正在使用的框架。如果最多只有5个,我可能会有5个主要是静态的选项。动态填充文本并隐藏未使用的问题。如果静态填充,我可以使用visual Studio中的设计视图将它们与CSS一起放置。我尝试过静态地制作它们并切换可见性,但它似乎有点笨重。类似于if(1){Show only 1 button and textbox}(if2){Show only 2 button and textbox}等。
public ArrayList MultipleId = new ArrayList();