动态创建HTML输入ID

时间:2014-07-10 13:28:01

标签: c# html asp.net-mvc-4

我想动态创建输入ID

我试过

for (int i = 0; i < Model[3].Count; i++)
      {
      @Model[3][i]
    terminal = "terminal" + i;

                        <input type="text" name="@terminal" id="@terminal"  onblur="return call()" />


      }

但没有成功。

修改

当我尝试:

function call() { alert(document.getElementById("terminal").value); } 

我得到空值。 但对于另一个元素 那个不在循环中并且id被赋值为static就可以了。

有什么想法吗?谢谢!

修改

我的模特,是

 List<List<string>>

终端值将分配为:  terminal0 1号航站楼 。 。 终端(n)的 在控制器上的FormCollection中,没关系,我得到正确的值问题是当我在JavaScript中尝试DOM时,我得到NULL

2 个答案:

答案 0 :(得分:0)

你得到了什么错误?

你在计算[3](第三阵列)模型中的数据吗?或者你想要实例化它?

如果你正在实例化模型并设置3个空格,那么我认为在使用标识符执行for循环之前最好这样做,并使用identifier.count使它变得更清晰。 例如。

Model[3] model;

for (int i = 0; I < model.count; i++)

以这种方式设置为3,我将计为3。

如果计算第3个数组中的模型(Model [3] .count) 我不确定这是否可行。如果确保它是一个整数。

希望这会有所帮助。

答案 1 :(得分:0)

问题是你的javascript。它应该是:

function call() { alert(document.getElementById("terminal0").value); } 

您正在创建id值:terminal = "terminal" + i;,它将生成terminal0terminal1等。所有这些都可以通过查看您生成的html上的来源轻松验证页。