执行一个JavaScript脚本
我有使用JavaScript(我敢新进入这个语言)的一个问题执行一个JavaScript脚本
我的问题是内部的PHP脚本:我有一个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++;
}
}
感谢的提前。
你可以做的事情型动物:
在返回初始视图PHP,返回包含将保持数据的JavaScript的响应。
如:
<script>
var new_div = '<?php echo json_encode(array(1,2,3)); ?>'
</script>
所以,如果你的JavaScript在同一范围内运行,或在内部范围内,将有机会获得该变量。
OR
做一个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));
当您向服务器提交HTTP请求时(服务器,POST,GET等),服务器将读取您的服务器脚本并相应地执行操作,但使用JavaScript时,它是您的网络浏览器的行为人。如果你想让你的脚本工作,你需要做以下的事情。
写一个独立的PHP脚本(它自己的文件)。
使用Javascript向PHP脚本提交HTTP请求(您可以发送任何你想要的)。
从PHP文件访问响应并执行任何您想要的操作。
答案的最后部分是正确的,但第一部分是混淆的。 PHP无法执行JavaScript和反之亦然。但PHP可以在响应中嵌入JavaScript,然后可以执行它,并且Javascript可以在请求中嵌入PHP,并且也可以在PHP端执行。 – ecarrizo
我会编辑以适应。 – ScarletMerlin
Javascript在浏览器中运行。浏览器不知道PHP是什么。基本上你不能做你想这样做的事情。 – RiggsFolly
@RiggsFolly基本上说了什么。你可以从PHP获得你需要的任何值,将它们传递给模板,然后在你的js脚本中使用它们。 – Andrew
是的,这就是为什么我正在寻找一种方法。你有什么建议 ? – Rameleu