2016-09-29 106 views
-1

阵列我有这样的功能:检索在输入字段

function AddRowToForm(row){ 
    $("#orderedProductsTblBody tr").each(function(){ 
    // find the first td in the row 
    arr.push($(this).find("td:first").text()); 
    }); 
    for (i=0;i<arr.length;i++) 
    // display the value in input field 
document.getElementById("message").innerHTML = (arr[i] + "<br >"); 
}); 
} 

的问题是,我要检索的输入字段中的数组转换成一种形式。输入字段是最后一个(id =“message”)

fieldset class="pure-group"> 
    <label for="date">Data: </label> 
    <input id="date" name="date" type="text"/> 
</fieldset> 

<fieldset class="pure-group"> 
    <label for="time">Ora: </label> 
    <input id="time" name="time" /> 
</fieldset> 

<fieldset class="pure-group"> 
    <label for="pax">Numero di Persone: </label> 
    <input id="pax" name="pax" /> 
</fieldset> 

<fieldset class="pure-group"> 
    <label for="message">Esperienze: </label> 
    <input id="message" name="message" rows="5"></input> 
</fieldset> 

问题是该函数不起作用。我尝试过使用document.write(而不是innerHTML,它可以工作,但是它取消了所有的事情,任何帮助?提前谢谢你!:

+0

所以你想要的输出是什么?输入没有innerHTML,输入的行是? – epascarello

+0

T ry用'value'替换'innerHTML',因为'message'是一个输入。 – Santi

+0

@epascarello我想要表的第一列的文本值 –

回答

0

因此,你有两个问题:你设置输入文本的值。也没有追加,你只是压倒一切的价值。对于一个textarea,你需要使用\n新线。

$("#orderedProductsTblBody tr").each(function(){ 
    arr.push($(this).find("td:first").text()); 
}); 
for (var i=0;i<arr.length;i++) 
    // display the value in input field 
    document.getElementById("message").value += arr[i] + "\n"); 
}); 

现在我会怎样做呢?只要使用加入。

document.getElementById("message").value = arr.join("\n"); 
+0

谢谢!它的工作很棒!你节省了我的一天 –