如何使用从PHP到JavaScript的输入Box ID?

时间:2012-10-30 18:08:41

标签: php javascript html

我的JavaScript函数运行正常,但是我在从PHP输入框中获取不同的ID时遇到了问题。

的JavaScript

window.onload = function()
{   
new JsDatePick({
useMode:2,
target:"inputField1", //HERE I WOULD LIKE TO PASS DIFFERENT ID ex. "inputField1"+ "i"
dateFormat:"%Y-%M-%d",
yearsRange:[1978,2120],
limitToToday:false,
cellColorScheme:"beige",
imgPath:"main/img/",
weekStartDay:1
});

我的PHP输入框for loop

<div class = "start_date" >
<strong><label for="start_date">Start Date</label></strong>
<br/><br/> 
<?php
for($k=1;$k<=$textboxindex;$k++)
{
echo "<input type=\"text\" class='textboxsize' id= \"inputField1\"   name=\"start_date[]\" value=\"$start_date\" />";
echo "<br/>";
 }
?>
</div>

它工作正常,但我希望在JavaScript函数中使用不同的ID名称。有什么想法吗?

这不起作用......

echo "<input type=\"text\" class='textboxsize' id= \"inputField+$k\" name=\"start_date[]\" value=\"$start_date\" />";

任何帮助将不胜感激。

3 个答案:

答案 0 :(得分:1)

变化:

id= \"inputField+$k\" name=...

要:

id=\"inputfield$k\" name=...

什么是搞砸了“+”符号。 PHP使用“。”连接字符串。 ECHO $k正确地{{1}},你应该没有任何麻烦

答案 1 :(得分:1)

最有可能是JsDatePick小部件。它的target参数接受一个元素的ID,因此您必须将JS代码包装在一个循环中,并为每个字段ID启动一个单独的小部件实例。

假设输入字段索引以1:

开头
window.onload = function()
{   
    var i = <?=$totalNumberOfInputs;?>

    for(j=1;j<=i;j++) {  
        new JsDatePick({
            useMode:2,
            target:"inputField" + j, //HERE I WOULD LIKE TO PASS DIFFERENT ID ex. "inputField1" + j
            dateFormat:"%Y-%M-%d",
            yearsRange:[1978,2120],
            limitToToday:false,
            cellColorScheme:"beige",
            imgPath:"main/img/",
            weekStartDay:1
        });
    }
}

你不需要使用+符号来连接双引号内的字符串(顺便说一下,它是点)。

答案 2 :(得分:0)

 //this is doesn't work 
echo "<input type=\"text\" class='textboxsize' id= \"inputField$k\" name=\"start_date[]\" value=\"$start_date\" />";

只需移除+个符号即可。