0

私はこのコードを持っており、現在「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 : &nbsp &nbsp" + singleValues);
 }

</script>
4

3 に答える 3

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')投稿した例には存在しないようです。inputwith nameの値を設定しようとしていると想定しhidevalueました。この変更を上記の例に含めました。

もう1つのことは<p>、あなたの例にはありません(省略しない限り?)。<p>anを指定し、それを選択して変更することをお勧めします。そうしないと、ページ上idのすべての値が変更されます。<p>

于 2012-04-18T20:21:58.060 に答える
1

jQueryを使用してそれを行うこともできます.これを使用してください(上記の例の場合)

$("#menucompare option:selected").text();
于 2012-04-18T20:25:53.113 に答える
0

これにより、選択したオプションのテキストが表示されます。

$('#menucompare').children("option[value='" + $('#menucompare').val() + "']").text();
于 2012-04-18T20:22:55.387 に答える