通过a";“价值”;从表单中的select到带有javascript问题的php变量
我试图通过Javascript将select中的一个选项的值从HTML表单传递给一个PHP变量通过a";“价值”;从表单中的select到带有javascript问题的php变量,javascript,php,html,Javascript,Php,Html,我试图通过Javascript将select中的一个选项的值从HTML表单传递给一个PHP变量 <script type="text/javascript"> function changeDir(ID){ var dir = document.getElementById(ID).value; //For debuging purposes i've used an alert to show the value of dir on screen //ale
<script type="text/javascript">
function changeDir(ID){
var dir = document.getElementById(ID).value;
//For debuging purposes i've used an alert to show the value of dir on screen
//alert (dir);
//At this point of the function I want to assign the value of "dir" to the variable $folder
}
</script>
函数changeDir(ID){
var dir=document.getElementById(ID).value;
//出于调试目的,我使用了一个警报在屏幕上显示dir的值
//警报(dir);
//在函数的这一点上,我想将“dir”的值赋给变量$folder
}
这是带有html的my.php
<SELECT name="course" ID="course" onchange='changeDir("course")' >
<OPTION value="artes>'">artes</OPTION>
<OPTION value="ingles">inglés</OPTION>
</SELECT>
<?php $folder= ...?>
阿尔特斯
英格拉斯
我将它与一个php上传库一起使用,它们都在同一个文件中工作。
如果有人能向我解释如何将选项的值分配给php变量,那就太好了
谢谢和问候。事实是你不能。它们都位于页面的不同部分。虽然可以在同一个文件中编写它们,但所有PHP代码都在服务器端处理,Javascript无法从客户端看到任何内容
您可以做的是将其作为AJAX请求传递,以便获取一些信息以显示给用户,或者在用户通过提交表单更改选项时使
刷新页面,这样您就不会丢失表单的“状态”,然后在php块中验证是否选择了任何选项。您可以选择两种不同的方式。第一个是AJAX,第二个是重定向页面并获取
元素的值
HTML:
阿尔特斯
英格拉斯
爪哇:
函数changeDir(ID){
var dir=$(“课程”).val();
$.post(“php_file.php”,
{
发帖地址:dir
},
功能(数据){
$(“结果元素的id”).html(数据);
});
}
当用户在浏览器中执行某项操作后获取该值时,您不能将该值分配给Web服务器。此时,页面已离开服务器,现在位于浏览器中,无法再对服务器执行任何操作。您可以选择ajax、套接字或重新加载页面,所有这些都会向您的服务器发出新的请求,以实际将数据从浏览器发送回服务器。你可以使用nodejs:P
<SELECT name="course" ID="course" onchange='changeDir("course")' >
<OPTION value="artes>'">artes</OPTION>
<OPTION value="ingles">inglés</OPTION>
</SELECT>
<script type="text/javascript">
function changeDir(ID){
var dir = $("course").val();
$.post("php_file.php",
{
posted_dir: dir
},
function(data){
$("id_of_result_elemnt").html(data);
});
}
</script
<?php
$folder=$_POST['posted_dir'];
echo "This text will be display in the element with id_of_result_elemnt ID";
?>
<SELECT name="course" ID="course" onchange='changeDir("course")' >
<OPTION value="artes>'">artes</OPTION>
<OPTION value="ingles">inglés</OPTION>
</SELECT>
<?php if (iset($_GET['folder']))
{$_GET['folder']=$folder;}...?>
<script type="text/javascript">
function changeDir(ID){
var dir = document.getElementById(ID).value;
window.location = "http://example.com/myphp?folder=" + dir;
}
</script>