HTML在php变量中选择选定的值

时间:2010-03-12 20:16:07

标签: php select

我在html中有一个下拉列表。

当我更改下拉列表的值时,我想将所选值存储在php变量中

我怎样才能实现这个目标?

3 个答案:

答案 0 :(得分:1)

如果没有提交表单,可以使用AJAX调用(请参阅Prototype和MooTools等库以获取简单方法)来完成所有选择标记的onchange HTML属性。

答案 1 :(得分:1)

从技术上讲,这是不可能的。 PHP是服务器端,HTML是客户端。当用户调用URL时,服务器运行PHP,该PHP将被发送到HTML,因此您无法倒退。

但是,您可以使用ajax获取选择框的值并以某种有意义的方式使用它。你想用这个变量做什么?

修改

使用jQuery我会将选择框的值发送到ajax文件,然后让ajax文件创建文本框(如果值是你想要的那样)。这是一个例子。

$("#selectEle").change(function() {
    $.ajax({
        type: "POST",
        url: "yourajaxpage.ajax.php",
        data: {selectVal: $(this).val()},
        success: function(response) {
            $("#textBoxArea").html(response);
        },
        error: function() { alert("Ajax request failed."); }
    }
});

您将使用$ _POST ['selectVal']获取ajax页面中的值。在那里测试该值,并创建一个HTML文本框,然后将其发送回成功函数。

答案 2 :(得分:0)

是的,正如建议的那样,javascript / ajax实现非常适合。

我使用jQuery,但我认为它可以在其他库中实现。

无论如何.jQuery中的.change()都适用于此。当用户更改下拉列表的选定索引时,它会触发.change()函数,您可以在此函数中插入更多javascript conde以进行所需的更改。

如果您需要,您可以找到所选索引或获取所选索引的值,并根据该值添加逻辑以加载文本框(也使用javascript)。

这样的东西
$('target').change(function() {
  var value = $('target').val(); // gets the selected value
  if(value == "what you want it to be")
  {
    // load data into a div from your php file.
    $('#loading_div').load('ajax/test.html');
  }
});

这绝对应该让你开始。