Javascript 如何从PHP获取数组并使用数组中的值?
我在index.html中有一个下拉菜单和javascript。为了清楚起见,我删除了大部分选项(超过20个)。它将下拉菜单选择发送到Javascript 如何从PHP获取数组并使用数组中的值?,javascript,php,html,arrays,Javascript,Php,Html,Arrays,我在index.html中有一个下拉菜单和javascript。为了清楚起见,我删除了大部分选项(超过20个)。它将下拉菜单选择发送到engine.php index.html <script> function refreshpage(e) { var e = document.getElementById("sr"); var snk = e.options[e.selectedIndex].value; window.location.href =
engine.php
index.html
<script>
function refreshpage(e)
{
var e = document.getElementById("sr");
var snk = e.options[e.selectedIndex].value;
window.location.href = "engine.php?selectedOption=" + snk;
}
</script>
<h4>Select your option</h4>
<form action="" id="optionform" onsubmit="return false;">
<select class="item_options" id="sr" name='sr' onchange="refreshpage(this);">
<option value="None">Select option</option>
<option value="Option1">Option 1</option>
<option value="Option1">Option 2</option>
<option value="Option1">Option 3</option>
</select>
</form>
功能刷新页面(e)
{
var e=document.getElementById(“sr”);
var snk=e.options[e.selectedIndex].value;
window.location.href=“engine.php?selectedOption=“+snk;
}
选择您的选项
选择选项
选择1
选择2
选择3
当您选择一个选项时,它会将该选项发送到engine.php engine.php
<?php
$option1 = 5;
$option2 = 10;
$final = array($option1, $option2);
if($_GET["selectedOption"] == 'Option1')
{
$option1 = 20;
$option2 = 20;
}
?>
如何将
$final
发送回index.html并使用javascript使用$final
数组中的值($option1
和$option2
)。我基本上想刷新index.html
并使用新的更新值($option1=20;$option2=20;
)您可以按照@Hackerman的建议使用ajax,这很可能是我会使用的方法
或者,您可以将重定向添加到engine.php页面的末尾,并将用户发送回索引页面
$newURL = "index.php?values=$newValues";
header('Location: '.$newURL);
要采用这种方法,您的索引页需要在加载时处理values参数。您可以按照@Hackerman的建议使用ajax,这很可能是我将使用的方法 或者,您可以将重定向添加到engine.php页面的末尾,并将用户发送回索引页面
$newURL = "index.php?values=$newValues";
header('Location: '.$newURL);
要采用这种方法,您的索引页需要在加载时处理values参数。这只能使用AJAX完成。 将AJAX发送到somepage.php,在那里返回带有$final的json。
在做某事之后。这只能使用AJAX来完成。 将AJAX发送到somepage.php,在那里返回带有$final的json。
之后做点什么。如果你不在乎URL是什么,你可以
要求在engine.php中使用index.html:
因此,index.html中的一些PHP内容:
功能刷新页面(e)
{
var e=document.getElementById(“sr”);
var snk=e.options[e.selectedIndex].value;
window.location.href=“engine.php?selectedOption=“+snk;
}
如果您不在乎URL是什么,您可以要求在engine.php中使用index.html:
因此,index.html中的一些PHP内容:
功能刷新页面(e)
{
var e=document.getElementById(“sr”);
var snk=e.options[e.selectedIndex].value;
window.location.href=“engine.php?selectedOption=“+snk;
}
您可以使用ajax来来回发送数据。使用jquery,您可以执行以下操作:
var final;
$.ajax({
url: 'engine.php',
data: { selectedOption: $('#optionform').find(":selected").text() },
dataType: 'json',
success: function(data) {
final = data;
}
});
然后在engine.php
中,echo json\u encode($final)代码>您可以使用ajax来来回发送数据。使用jquery,您可以执行以下操作:
var final;
$.ajax({
url: 'engine.php',
data: { selectedOption: $('#optionform').find(":selected").text() },
dataType: 'json',
success: function(data) {
final = data;
}
});
然后在engine.php
中,echo json\u encode($final)
您可以使用ajax
和json\u编码的组合
您可以使用ajax
和json\u编码的组合
一种方式,但不是唯一的方式。举个例子怎么样?一种方法,但不是唯一的方法。举个例子怎么样?我需要将它从index.html改为index.php,对吗?这可能取决于服务器上如何配置php。在我的服务器上,所有文件都是PHP解析的。试试看。我需要将它从index.html更改为index.php,对吗?这可能取决于服务器上如何配置php。在我的服务器上,所有文件都是PHP解析的。试试看。