javascript - 在同一页面上的 php 中获取 JavaScript 变量

标签 javascript php variables xmlhttprequest

我自己真的试过了,我确实阅读了这里和其他地方提出的其他问题,但我似乎无法正确回答。是的,我还在学习,所以代码可能会让您感到困惑...

我有 1 个页面 名为 index.php。

在该页面上,我有一个下拉列表,根据所选项目,同一页面上的图片应该会发生变化:

<select name="animal-pictures" id = "animal" onchange="setImage(this)">
<option value="/images/placeholder.jpg">Choose animal</option>
<option value="/images/lion.jpg">Lion</option></select>

<img class="resized" src="/images/placeholder.jpg" name="image-swap" />

这让我进入javascript:

function setImage(select){
    var image = document.getElementsByName("image-swap")[0];
    image.src = select.options[select.selectedIndex].value;}

我现在需要的是从脚本中获取select.options[select.selectedIndex].label(例如“Lion”),以便我可以在页面的其他地方使用它.

到目前为止我想出了什么(在许多其他版本中):

function setImage(select){
    var image = document.getElementsByName("image-swap")[0];
    image.src = select.options[select.selectedIndex].value;
    var data = select.options[select.selectedIndex].label;
    var url = "index.php?id=" + data;
    // alert(data);
    // alert (url);
    xmlhttp.open("GET",url,true);
    xmlhttp.send();}

以及我如何尝试在 php 中检索该变量:

<?php
$name = $_GET['id'];
echo $name ?>

alert(data) - 给我一个显示“lion”的窗口

alert (url) - 给我一个显示“index.php?id=lion”的窗口

但我无法从脚本中获取这些信息-.-

非常感谢您的帮助。请记住,我对此仍然是新手 - 到目前为止,我只是试图获得“有效”的东西 - 即使有 50 种更好的编码方法。

最佳答案

我认为您正在寻找的是一个回调函数,它为您提供来自 php 文件的 ResponseText。对吧?!

如果是,试试这个:

xmlhttp.onreadystatechange=function() {
    if (xmlhttp.readyState==4 && xmlhttp.status==200)
    {
        document.getElementById("myDiv").innerHTML=xmlhttp.responseText;
    }
}

关于javascript - 在同一页面上的 php 中获取 JavaScript 变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21681391/

相关文章:

javascript - 为两个 anchor 标签添加事件类

javascript - 如何在 SQLite 中只选择一个项目? (本地存储)

javascript - 接收数据json/jquery

javascript - GoogleMaps 回调参数无效

Windows 批处理文件 - 嵌套 FOR 循环中的变量

javascript - 火狐插件 SDK : Attache a JS code to all the frames of a page

php - yii2:如何使用超棒的字体图标?

php - 无需登录的 Symfony2 安全设置

java - 关于变量赋值和分配的困惑

c - C 中虚拟内存的组织