我試圖做到這一點,當你點擊一個按鈕,它會添加新的字段到頁面。我知道onclick只能使用JS函數,所以我決定嘗試運行一個JS腳本。起初我曾試圖做在php代碼中使用JS變量?
<html>
<head><title>multiple line test</title><head>
<body>
<script type="text/javascript">
var texters='';
var num=0;
function newInput(nomnom)
{
texters='';
num=nomnom+1;
for (var i=0; i<nomnom; i++)
{
texters+='<p>\
Please specify a file, or a set of files:<br>\
<input type="file" size="40">\
</p>\
<p>\
Caption : <br> \
<input type="text" size="30">\
</p>';\
}
document.write(texters+'<div>\
<input type="submit" value="Send">\
</div>\
</form>\
<br>' + '<input type="button" value="new entry" onclick="newInput(num)">' . '</body></html>');
}
newInput(num);
</script>
</body>
</html>
但這並沒有奏效。所以我試着添加一點點的php,我知道它更好。我嘗試這樣做:
<html>
<head><title>multiple line test</title><head>
<body>
<script type="text/javascript">
var texters='';
var num=0;
function newInput(nomnom)
{
document.write(<?php
tex='';
for (var i=0; i<=(nomnom); i++)
{
tex.='<p>
Please specify a file, or a set of files:<br>
<input type="file" size="40">
</p>
<p>
Caption : <br>
<input type="text" size="30">
</p>';
}
echo tex . '<div>
<input type="submit" value="Send">
</div>
</form>
<br>' . '<input type="button" value="new entry" onclick="newInput(num)">' . '</body></html>';
?>);
}
newInput(num);
</script>
</body>
</html>
但我知道這是行不通的,因爲我不能讓我使用的字段數使用了JS,進入PHP變量。有沒有什麼辦法可以強制JS將這個數字放在$ _POST中,這樣我就可以在不必製作其他表單的情況下檢索它?還是有更好的方法來做我想做的事情?
PHP在服務器上運行。 JavaScript在瀏覽器中運行。理解這是什麼意思,然後從JS代碼中解開PHP代碼。 –
@MattBall:這通常是我對這些類型問題的迴應,但OP對$ _POST的引用使我相信它們實際上使用了回發。不過,這個問題有點不清楚。 –