我是PHP的新手,事实上我这样做的原因是自定义wordpress插件,以便它可以满足我的需要。到目前为止,我有一个默认表单,我现在正在做的是添加一个国家/地区下拉列表。这是我添加它的方式
<div class="control-group">
<label class="control-label" for="Country">Country :</label>
<div class="controls">
<select id="itemType_id" name="cscf[country]" class="input-xlarge">
<option value="malaysia@email.com">Malaysia</option>
<option value="indonesia@email.com">Indonesia</option>
</select>
<span class="help-inline"></span>
</div>
</div>
到目前为止,我只能使用
检索所选项目的值$cscf['country'];
在这种情况下,如何获取国家/地区名称的显示文字?
答案 0 :(得分:11)
您可以使用隐藏字段,当您下拉列表的选定值发生变化时,您可以使用JavaScript和jQuery将值设置为此字段。
<select id="itemType_id" name="cscf[country]" class="input-xlarge">
<option value="malaysia@email.com">Malaysia</option>
<option value="indonesia@email.com">Indonesia</option>
</select>
<input type="hidden" name="country" id="country_hidden">
<script>
$(document).ready(function() {
$("#itemType_id").change(function(){
$("#country_hidden").val(("#itemType_id").find(":selected").text());
});
});
</script>
然后,当您提交页面时,您可以使用
获取国家/地区的名称$_POST["country"]
答案 1 :(得分:3)
<select name="text selection" onchange="getText(this)">
<option value="">Select text</option>
<option value="1">my text 1</option>
<option value="2">my text 2</option>
</select>
首先在属性&#34; onchange&#34;上放置一个java脚本函数。选择。 然后,创建您的函数,使用getElementById
在文本框中传输文本<script>
function getText(element) {
var textHolder = element.options[element.selectedIndex].text
document.getElementById("txt_holder").value = textHolder;
}
</script>
然后创建一个临时持有者:
<input type="" name="txt_holder" id="txt_holder"> type should be hidden
然后在PHP变量中分配它:
$variableName=$_POST['txt_holder'];
答案 2 :(得分:1)
试试吧,
<?php
if(isset($_POST['save']))
{
//Let $_POST['cscf']['country']= malaysia@email.com
// you can explode by @ and get the 0 index name of country
$cnt=explode('@',$_POST['cscf']['country']);
if(isset($cnt[0]))// check if name exists in email
echo ucfirst($cnt[0]);// will echo Malaysia
}
?>
<form method="post">
<div class="controls">
<select id="itemType_id" name="cscf[country]" class="input-xlarge">
<option value="malaysia@email.com">Malaysia</option>
<option value="indonesia@email.com">Indonesia</option>
</select>
<span class="help-inline"></span>
</div>
<div class="controls">
<input type="submit" name='save' value="Save"/>
<span class="help-inline"></span>
</div>
</form>
答案 3 :(得分:1)
试试这个
<?php
if(isset($_POST['save']))
{
$arrayemail = $_POST['cscf'];
$mail = $arrayemail['country'];
$explode=explode('@',$mail);
// print_r($explode);
if(isset($explode[0]))
echo ucfirst($explode[0]);
}
?>
<form method="post">
<div class="controls">
<select id="itemType_id" name="cscf[country]" class="input-xlarge">
<option value="malaysia@email.com">Malaysia</option>
<option value="indonesia@email.com">Indonesia</option>
</select>
<span class="help-inline"></span>
</div>
<div class="controls">
<input type="submit" name='save' value="Save"/>
<span class="help-inline"></span>
</div>
</form>