2017-02-08 10 views
0

テキストボックスに入力することでドロップダウン値を設定していました。問題は私のドロップダウンの値がドロップダウンのオプションのテキストと異なることです。だから私はドロップダウンで正しいテキストを取得するテキストに各オプションの値を入力する必要があります。テキストボックスにテキストを入力してテキストを選択する方法。jQueryを使用して選択ボックスのテキストを設定する方法

$(document).ready(function(){ 
 
    $("#txt_scheme").keyup(function(){ 
 
    $("#scheme").val($("#txt_scheme").val()); 
 
    }); 
 
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<div class="form-group"> 
 
    <label class="col-sm-4 control-label">Scheme**</label> 
 
    <div class="col-sm-4"> 
 
    <select class="form-control" name="scheme" id="scheme"> 
 
     <?php 
 
     for ($column = 'A'; $column <= $lastcol; $column++) { 
 
      echo '<option value="' . $column . '">' . $worksheet->getCell($column . '1')->getValue() . '</option>'; 
 
     } 
 
     ?> 
 
    </select> 
 
    </div> 
 
    <div class="col-sm-4"> 
 
    <input type="text" class="form-control" id="txt_scheme" name="txt_scheme" placeholder="Or Type here"> 
 
    </div> 
 
</div>

私のドロップダウンオプションが

QC code 
Analyte 
Assay Value 
Assigned Value 
STANDARDDEVIATION 
ACCEPTABLEMIN 
ACCEPTABLEMAX 
Sample ID 
Date 

で、値がQCコードのようにアルファベットである値を持っています。

したがって、テキストにQC codeと入力すると、ドロップダウンリストからQC codeを選択する必要があります。今そのテキスト値によって選択オプションをつかむ、そしてtrueにselected属性を設定するA

+1

PHPではなくレンダリングされたHTMLを投稿してください。 – j08691

答えて

1

あなたはvalueを得るためにfilter機能を使用する必要があります

$(document).ready(function(){ 
    $("#txt_scheme").keyup(function(){ 
     var valueFromText=$("#scheme option").filter(function(i,option){ 
      return $(option).text()==$("#txt_scheme").val(); 
     }).val(); 
     $("#scheme").val(valueFromText); 
    }); 
}); 

$("#txt_scheme").keyup(function(){ 
 
     var valueFromText=$("#scheme option").filter(function(i,option){ 
 
      return $(option).text().toLowerCase()==$("#txt_scheme").val().toLowerCase(); 
 
     }).val(); 
 
     $("#scheme").val(valueFromText); 
 
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<select id="scheme"> 
 
    <option value="A">QC code</option> 
 
    <option value="B">Analyte</option> 
 
    <option value="C">Assay Value </option> 
 
    <option value="D">Assigned Value </option> 
 
    <option value="E">STANDARDDEVIATION</option> 
 
    <option value="F">ACCEPTABLEMIN</option> 
 
    <option value="G">ACCEPTABLEMAX</option> 
 
    <option value="H">Sample ID</option> 
 
</select> 
 
<input type="text" id="txt_scheme"/>
txt_schemeテキストとオプションの

+1

美しく働いた!私は小文字に書き込むことが可能なことは一つだけです。私はすべてのテキストを修正する必要があります。 –

+1

@adeel、そうです、 'toLowerString()'メソッドを使うことは可能です。私は自分の答えを更新しました。 –

+0

@ Alexandru-Ionut Mihaiはとてもうまくいった!私に速い解決策を提供してくれた感謝は、5時間を探していましたが、私は適切な答えを得ていませんでした。適切なキーワードで検索していない可能性があります。 –

0

使用contains()を入力して、それを取得イム:

var textValue = $("#txt_scheme").val(); 
$("select option:contains("+textValue+")").attr('selected', true); 
+0

申し訳ありませんが私はあなたの答えを得ていない。あなたは簡単に私に電話をかけることができます –

関連する問題