2011-08-12 155 views
0

您好我正在嘗試使用for循環動態創建文本框,並且希望在其中實現所有日曆。我的代碼如下:使用javascript動態創建文本框

for (var j = 1; j <= 5; j++) { 

my_proj.innerHTML = my_proj.innerHTML +'<input type="text" name="txtStartDate" id="txtStartDate"+j runat="server" BackColor="#D6E4ED" BorderStyle="Inset" Width="10px" ></input>' 
+'<a href="javascript:;" onclick="window.open(\'PopUp.aspx?textbox=txtStartDate+j\',\'cal\',\'width=250,height=225,left=270,top=180\')">' 

} 

由於我需要爲所有文本框單獨編號,我試圖用變量j連接它。但它不工作,並給出錯誤爲'Unknown identifier "startDate"+j"'。 請提出建議來解決這個問題。任何其他的想法來解決這個問題也是可以的。順便說一句我試圖在.aspx頁面中實現它。

在此先感謝。

任何人都可以給我任何其他的例子來實現相同的?請。

回答

3

在將變量附加到字符串之前,必須先關閉字符串,以便將其識別爲變量,而不僅僅是字母'j'。

所以。 。 。

var j = 10, 
    str = "He is j years old"; 

。 。 。將不起作用;你需要這樣做:

var j = 10, 
    str = "He is " + j + " years old"; 

您的代碼應該是這樣的:

my_proj.innerHTML = my_proj.innerHTML +'<input type="text" namea="txtStartDate" id="txtStartDate' + j +'" runat="server" BackColor="#D6E4ED" BorderStyle="Inset" Width="10px" ></input>' 
+'<a href="javascript:;" onclick="window.open(\'PopUp.aspx?textbox=txtStartDate' + j + '\',\'cal\',\'width=250,height=225,left=270,top=180\')">' 
+0

我試過了,但仍然給它錯誤。 – champ

+0

什麼是錯誤? –