2010-03-12 131 views

回答

1

从技术上讲这是不可能的。 PHP是服务器端,HTML是客户端。当用户调用一个URL时,服务器运行发送到HTML的PHP​​,所以你不能倒退。

然而,您可以使用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文本框,并将其发送回成功函数。

+0

好的,当我从选择框中选择一个选项 取决于所选择的值我将决定是否显示文本框 但问题是文本框的代码是在另一个php文件? – 2010-03-12 20:34:05

1

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

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'); 
    } 
}); 

这肯定应该让你开始。

+0

非常感谢这个详细的代码 我认为这将是非常简单的,但现在所有的答案提到阿贾克斯我会开始寻找它 非常感谢 – 2010-03-13 07:23:08