我有这个代码,我现在得到'mytablevalues',但我想知道我是否可以得到'myvalues',我的意思是只有选择的文本。
<form id="aform" method="post">
<select id="menucompare" name ="menucompare" size="1">
<option value="nothing" <?php if ($menucompare == "nothing") { echo " selected='selected'"; } ?>>Select one</option>
<option value="mytablevalue1" <?php if ($menucompare == "mytablevalue1") { echo " selected='selected'"; } ?> >myvalue1</option>
<option value="mytablevalue2" <?php if ($menucompare == "mytablevalue2") { echo " selected='selected'"; } ?> >myvalue2</option>
<option value="mytablevalue3" <?php if ($menucompare == "mytablevalue3") { echo " selected='selected'"; } ?> >myvalue3</option>
<option value="mytablevalue4" <?php if ($menucompare == "mytablevalue4") { echo " selected='selected'"; } ?> >myvalue4</option>
</select>
<input type="hidden" name="hidevalue" value="<?php echo $menucompare ; ?>" />
<noscript><input type="submit" value="Submit"></noscript>
</form>
<script type="text/javascript">
$(document).ready(function(){
$("select").change(function() {
displayVals();
});
displayVals();
});
function displayVals() {
var singleValues = $("#menucompare").val();
$("#hiddenselect").val(singleValues);
$("p").html("Procent of : " + singleValues);
}
并且我也遇到了默认值(无)的问题。 任何建议!
编辑。 我让它像那样工作
<script type="text/javascript">
$(document).ready(function(){
$("select").change(function() {
displayVals();
});
displayVals();
});
function displayVals() {
var singleValues = $("select option:selected").text();
$("#hiddenselect").val(singleValues);
$("p").html("Procent of :    " + singleValues);
}
</script>
答案 0 :(得分:2)
使用.text()
获取您的选项的文字值:http://api.jquery.com/text/
要获取所选选项的文本,您可以使用:
$('#menucompare option:selected').text()
http://api.jquery.com/selected-selector/
示例强>
<script type="text/javascript">
$(document).ready(function() {
$("#menucompare").change(function() {
$("p").html("Procent of : " + $("option:selected", this).text());
$('input[name="hidevalue"]').val($("option:selected", this).text());
});
});
</script>
$('#hiddenSelect')
似乎不存在于您发布的示例中,我假设您尝试设置名称为input
的{{1}}的值,我在上面的例子中包含了这一变化。
另一件事,你的例子中没有hidevalue
(除非你把它遗漏了?)。我建议您<p>
<p>
并选择更改它,否则您网页上每个id
的价值都会发生变化。
答案 1 :(得分:1)
你可以简单地使用jQuery来做这件事,使用它(对于上面的例子)
$("#menucompare option:selected").text();
答案 2 :(得分:0)
这将为您提供所选选项的文本:
$('#menucompare').children("option[value='" + $('#menucompare').val() + "']").text();