nan*_*and 2 javascript asp.net code-behind
如何访问由JavaScript动态创建的控件(在CodeBehind中)的值?
我使用以下代码动态创建控件:
var counter = 0;
var words;
var foo;//span tag
function add(i) {
var counter = 0;
var words;
var foo;//span tag asp in page where the controls to be added
if (i == 'ad') {
counter++;
//Create an input type dynamically.
foo = document.getElementById("dynamic")
tbnam = document.createElement("input") //textbox
tbdes = document.createElement("input") //textbox
lbnam = document.createElement("Label")
lbdes = document.createElement("Label")
before = document.createElement('br')
after = document.createElement('br')
//Assign different attributes to the element.
wordsnam = document.createTextNode("Item")
wordsdes = document.createTextNode("Descrip")
tbnam.setAttribute("type", "TextBox");
tbdes.setAttribute("type", "TextBox");
tbnam.setAttribute("Id", "tbdynamicnam" + counter);
tbdes.setAttribute("Id", "tbdynamicdes" + counter);
lbnam.setAttribute("Id", "lbdynamicnam" + counter);
lbdes.setAttribute("Id", "lbdynamicdes" + counter);
before.setAttribute("Id", "bf" + counter);
after.setAttribute("Id", "af" + counter);
lbnam.appendChild(wordsnam)
lbdes.appendChild(wordsdes)
//Append the element in page (in span).
foo.appendChild(before);
foo.appendChild(lbnam);
foo.appendChild(tbnam);
foo.appendChild(lbdes);
foo.appendChild(tbdes);
foo.appendChild(after);
}
}
Run Code Online (Sandbox Code Playgroud)
提交表单时,它将在Request.Form集合中,您可以在Request对象中最简单地访问它,它将检查所有集合(QueryString,Form,Cookies和ServerVariables)
JavaScript的:
tbnam = document.createElement("input") //textbox
tbnam.setAttribute("type", "TextBox");
tbnam.setAttribute("Id", "tbdynamicnam" + counter);
tbnam.setAttribute("name", "tbdynamicnam" + counter);
Run Code Online (Sandbox Code Playgroud)
代码隐藏:
string newval = Request["newelementname"];
Run Code Online (Sandbox Code Playgroud)
正如James Montagne所述,您需要一个表单元素名称.
| 归档时间: |
|
| 查看次数: |
967 次 |
| 最近记录: |