我使用Javascript时遇到了问题(因为我对这种语言很新)
我的问题是:我有一个Javascript脚本,当您单击按钮时会添加表单字段,并通过递增来更改其名称。
然后将数据存储到数组中。当我保存这些填充的字段时,我需要将它们恢复并显示为<input type="text" value="<?php $myvalue[] ?>"/>
。问题是,我需要在javascript文件中进行操作,而且我不知道如何将内容解释为PHP脚本。
以下是我尝试的内容:
var counter = 1;
var limit = 10;
var new_div = '<?php echo json_encode($arraySpecialite['+ counter +']); ?>';
function addInput(divName){
if (counter == limit) {
alert('You cannot add more than' + counter + ' fields');
}
else {
var newdiv = document.createElement('div');
newdiv.innerHTML = 'Specialité ' + (counter + 1) + ' <br><input type="text" name="specialite[]" id="specialite[]"" value="'+ new_div +'">';
document.getElementById(divName).appendChild(newdiv);
counter++;
}
}
提前感谢。
答案 0 :(得分:1)
当您向服务器提交HTTP请求(Fetch,POST,GET等)时,服务器会读取您的服务器脚本并采取相应的行动,但是使用javascript,您的Web浏览器就是行动者。如果您希望脚本正常工作,则需要执行以下操作。
编写独立的PHP脚本(自己的文件)。
使用Javascript向PHP脚本提交HTTP请求(您可以发送任何内容)。
从PHP文件中访问响应并执行任何操作。
答案 1 :(得分:1)
你可以做不同的事情:
在返回初始视图的PHP中,返回包含将保存数据的javascript的响应。
例如:
<script>
var new_div = '<?php echo json_encode(array(1,2,3)); ?>'
</script>
因此,如果您的javascript在同一范围内运行,或者在内部范围内运行,则可以访问该变量。
或强>
发出AJAX请求并从服务器读取响应
xmlhttp.onreadystatechange=function() {
if (xmlhttp.readyState==4 && xmlhttp.status==200) {
console.log(xmlhttp.responseText);
}
}
xmlhttp.open("POST","myscript.php",true);
xmlhttp.setRequestHeader("Content-type","application/x-www-form-urlencoded");
xmlhttp.send("name=Shikaka&lastname=Ventura");
当myscript.php收到请求时使用它(确保你转义值)然后返回一个响应
<?php
echo json_encode(array(1,2,3));