0

可能重复:
如何在 PHP 代码中获取下拉框的选定选项值

落下 :

 <SELECT NAME='action' class="action" id="action" onchange="a();"> 
        <OPTION VALUE="IN"> IN </OPTION>
        <OPTION VALUE="OUT"> OUT </OPTION>
    </SELECT>

获取下拉文本的脚本:

 <script type="text/javascript">
    function a(){
    var e = document.getElementById("action");
    var strUser = e.options[e.selectedIndex].text;
    document.write(strUser);
    }
   </script>

//从使用JavaScript获取下拉列表中的选定值中获取脚本? 这里我需要在 php 中打印 strUser 的值。否则在更改下拉值时应在同一页面中打印,而不是在新页面中。

4

5 回答 5

0

如果您想将其传递给 PHP 脚本(然后将其保存为全局或数据库中),您可以使用 cookie,或将其作为表单的一部分提交(我建议这样做)。

所以你有了

<form action="form_receiver.php" method="get">

这基本上意味着,将此表单中的所有(命名)字段提交到form_receiver页面。“get”可以替换为“post”,它们只是发送数据的两种方法(“get”数据在 URL 中编码,因此可以保存,对简单的事情很有用,“post”是“隐藏发送浏览器”,因此更适合处理大量数据或机密内容)。

现在要发送每个字段中的数据,您需要为它命名,正如您提供的那样。因此,对于该输入字段,您只需将其包含在一个表单中。

在 上form_reciever.php,您将能够使用$_GET['name']$_POST['name']根据您使用的方法按名称访问变量。然后,您可以将其保存在其他地方以备后用。


Cookie 应该用于保存有关用户的数据(例如会话 ID),我不建议使用它们在页面之间传递数据。但是,如果出于某种原因您需要这样做,您可以使用 javascript 设置 cookie 数据并$_COOKIE['cookie_name']在 php.ini 中使用它。如果您在 php 中使用 cookie 设置setcookie("name", "value")(更多详细信息请参见http://php.net/manual/en/function.setcookie.php)。

有很多方法可以在 javascript 中设置 cookie。我建议使用像 jQuery 这样的库,您可以以类似的方式设置和获取 cookie:$.cookie("name", "new_value")$.cookie("name")获取值。

于 2012-05-31T13:40:14.643 回答
0

PHP 是在 javascript(客户端)代码之前运行的服务器端脚本。你可以试试

Ajax用于将此值发送到服务器并生成您想要的输出。

查看详细信息Ajax

于 2012-05-31T06:14:03.313 回答
0

如果要将 Dropbox 中选择的数据传递给 PHP 脚本,则必须使用表单或来自 JavaScript 的 submit() 调用,而不是动态生成的表单。

但是如果你不希望页面被重新加载,那么你必须依赖 AJAX 技术。

看看这里这里。网络上有大量的例子。

于 2012-05-31T06:14:45.750 回答
0

<html><头>

<脚本> //document.getElementById('yourSelectBoxId').options[document.getElementById('yourSelectBoxId').selectedIndex].value//or

函数 onchg(){ alert(document.getElementById('yourSelectBoxId').value); } </script> </head>

<select id="yourSelectBoxId" onchange="onchg();">

<选项值=1> a</选项> <选项值=2> b</选项> <选项值=3> c</选项>

</选择>

<正文>

</正文>

</html>

于 2012-05-31T06:28:19.307 回答
0

使用innerHTML而不是 document.write

于 2012-05-31T07:40:18.250 回答