我想在php中执行此功能。我有两个字段,一个是文本框和一个 另一个是下拉列表。下拉列表包含sql中的值。当从下拉列表中选择其中一个值时,我希望根据所选的选项填充文本框。
以下是下拉列表代码
<td>Test Group ID</td>
<td><select id="testgroupid" name="testgroupid" style="column-width:35">
<option value="<?php echo $testgroupid;?>"><?php echo $testgroupid;?></option>
<?php
$x=new con();
$x->connect();
$retval = "select distinct(Id) from testgroupmaster";
$sql1 = mysql_query($retval) or die (mysql_error());
while($res=mysql_fetch_array($sql1, MYSQL_BOTH)){
?>
<option value="<?=$res['Id'];?>"><?=$res['Id'];?></option>
<?
}
?>
</select></td>
根据id,我想填充文本框,我该怎么做?请帮助朋友。
<tr>
<td>Test Group Name</td>
<td><input type="text" name="testgroupname" id="zipsearch" value="<?php echo $testgroupname; ?> "></td>
</tr>
答案 0 :(得分:0)
如果您希望在下拉选择更改后立即填写文本框,最简单的方法是使用javascript:
<td><select id="testgroupid" name="testgroupid" style="column-width:35"
onchange='document.getElementsByName("testgroupname")[0].value =
document.getElementById("testgroupid").options[e.selectedIndex].value;'>
答案 1 :(得分:0)
你需要JavaScript。使用jQuery(或您喜欢的库)并将事件监听器绑定到组合框。
jQuery示例:
$("#myCombo").change(function(e){
$("myTextField").val( $("#myCombo").val() );
});
答案 2 :(得分:0)
我有一个涉及jQuery的建议。我不知道你是否使用这个库,但无论如何我都在发帖:)
<script type="text/javascript">
$(function() {
$("#testgroupid").change(function{
$("#zipsearch").text($(this option:selected).val();
});
});
</script>
在dropbown框上的change事件中,此函数将触发,并相应地设置zipsearch-input。
答案 3 :(得分:0)
我不确定$ testgroupname来自哪里但我认为你想在下拉列表中选择该值。如果您没有客户端上的可用值,则必须以某种方式从服务器检索它。
您无法使用PHP填充文本框,因为在下拉列表中选择了选项后您不发送帖子。关于如何解决这个问题有很多选择。我个人会使用Ajax填充文本框而不发布到服务器。
开始的好地方: http://buffernow.com/2012/08/cascading-dropdown-ajax/
答案 4 :(得分:0)
试试这个
<script>
function selecteditem(selectedval)
{
jQuery.post("<?php echo JURI::root().'test.php'?>", { id: selectedval },
function(data) {
jQuery('.zipsearch').val(data);
});
}
</script>
//test.php on the root
<?php
$val=$_POST['id'];
//do what you want with $val
//and say final output is in variable $result than echo it
echo $result;
?>
<!--html code here-->
<select id="testgroupid" name="testgroupid" style="column-width:35" onclick="selecteditem(this.value);">
<option value="<?php echo $testgroupid;?>"><?php echo $testgroupid;?></option>
<?php
$x=new con();
$x->connect();
$retval = "select distinct(Id) from testgroupmaster";
$sql1 = mysql_query($retval) or die (mysql_error());
while($res=mysql_fetch_array($sql1, MYSQL_BOTH))
{
?>
<option value="<?=$res['Id'];?>"><?=$res['Id'];?></option>
<?
}
?>
</select>
<input type="text" name="testgroupname" id="zipsearch" class="zipsearch" value="<?php echo $testgroupname; ?> ">
答案 5 :(得分:0)
HTML
<select id="testgroupid" name="testgroupid"
style="column-width:35" onChange=filltext();>
的javascript
function filltext()
{
var e = document.getElementById("testgroupid");
var group = e.options[e.selectedIndex].text;
document.getElementById("zipsearch").value= group ;
}
你的php代码在这里是错误的
<option value="<?=$res['Id'];?>"><?=`$res['Id']`;?></option>
更改为
<option value="<?=$res['Id'];?>"><?=$res['GROUP_NAME'];?></option>
答案 6 :(得分:0)
String userId = Preferences.get(AllUrls.userIdPreference, null);
if (userId == null) {
new Login(theme).show();
} else {
new Home(theme).show();
}