繁体   English   中英

如何在Javascript中访问动态创建的控件(服务器端)

[英]How to access dynamically created controls(Server side) in Javascript

我已经在(c#)后面的代码中动态创建了几个文本框,这些文本框表示某种类型的内存的数量字段。 每个文本框都与价格属性和尺寸属性相关联。 我的总体目标是使用Java语言来更新(对于每个文本框,将数量乘以price和size属性,然后将所有属性相加),使用诸如onblur之类的命令或类似的命令来显示“ total Size”和“ Total Price”字段(我是如果有的话,则打开不同的选项)。 我遇到的问题是我不确定如何从Javascript访问控件,因为它们是动态创建的。

这是我的代码后面。 在此先感谢,谢谢。

for (int I = 0; I < DataSetCount; I++)
        {
            tbArrMemory[I] = new TextBox();
            lblmemory[I] = new Label();
        }
        while (N < DataSetCount)
        {

            tbArrMemory[N].Height = 20;
            tbArrMemory[N].Width = 20;
            tbArrMemory[N].Text = "0";
            tbArrMemory[N].ID = "tbArray" + N;
            tbArrMemory[N].Attributes.Add("onblur", "checkDimm(" + tbArrMemory[N].ClientID + ");");
            tbArrMemory[N].Attributes.Add("Price", dsMemory.Tables["MemoryConf"].Rows[N]["Price"].ToString());
            tbArrMemory[N].Attributes.Add("GBSize", dsMemory.Tables["MemoryConf"].Rows[N]["GBSize"].ToString());

            lblmemory[N].Width = 600;
            lblmemory[N].Text = dsMemory.Tables["MemoryConf"].Rows[N][dsCol].ToString();
            plhDrives.Controls.Add(lblmemory[N]);
            plhDrives.Controls.Add(tbArrMemory[N]);

            plhDrives.Controls.Add(new LiteralControl("<br/></br>"));
            N += 1;

        }

采用

document.getElementById("id")

您的情况是将ID设置为

"tbArray" + N;

因此它们将是tbarray0,tbarray1等。您可能想要遍历它们。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM