我创建像这样我的网页客户端的文本框..Request.Form.FindAllKeys不工作在IE8
var _text = document.createElement("input");
_text.setAttribute("type", "text");
_text.setAttribute("id", "txtAsName" + num);
_text.setAttribute("name", "txtAsName" + num);
在服务器端的代码,我检索任何文本框的ID的形式(你可以添加txtAsName1,txtAsName2,txtAsName3,然后删除txtAsName2所有客户端,所以它的重要在我的情况下在回发期间抓住窗体上的任何文本框)
我正在使用服务器端的其余文本框的ID这个:
string[] allFormKeys = Request.Form.AllKeys;
foreach (string key in allFormKeys)
{
Response.Write("Key Name: " +key + "<br/>");
if (key.StartsWith("txtAsName"))
{
txtBoxes.Add(key);
}
}
在Firefox中这工作正常,但在IE8 Request.Form.AllKeys返回没有文本框!我可以通过Response.Write看到这一点,并在Firefox中获取文本框。
我检查是否有可能在HTML 2级形式的标签,但心不是说你不会在你的问题说出你输入的文本元素添加到的情况下
类似这样的事情最好通过让name属性像'txtAsName []'来完成,所以服务器端会为你建立一个数据数组。 –
@Kolink我没有关注你的意思 –
''在页面上有多个这样的结果将导致服务器端的数组。 –