2016-11-21 11 views
0

私はHTML、CSSに基づいてWebページを開発しようとしています。私はサーバー側のスクリプトのためにPHPを使用しています。 ドロップダウンメニューを利用可能なオプションで表示したいのですが、同時にこのドロップダウンリストでテキストを受け入れる必要があります。ドロップダウンリストからも、私が望むものをテキストボックスから選択することができます。 上記のシナリオで1つの解決策が見つかりましたが、うまくいきましたが、何を追加したいのですが、次にテキストボックスに何かを書くと、ドロップダウンのオプションではなく、次に自動的にインクルードされます。自動ドロップ機能と自動更新機能を備えたHTMLドロップダウンメニュー

- > は、現在、私のドロップダウンが3つのオプション「サムスン」、「ソニー」、「アップル」

<option value="one">Samsung</option> 
<option value="two">Sony</option> 
<option value="three">Apple</option> 

を言って持っていることは今、「Lenevoは」利用できません。テキストボックスの最初のときは、 "Lenevo"を選択肢として書きます。ドロップダウンメニューにそれを含めます。

<option value="one">Samsung</option> 
<option value="two">Sony</option> 
<option value="three">Apple</option> 
<option value="four">Lenevo</option> 

。 。

このようになるでしょう。

の助けをありがとう。.. :)

+1

https://select2.github.io/それが正常に動作し – Ima

答えて

1

最善の解決策は、SELECT2ようなものになるだろう。 (JavaScriptの)例について

はここを見て:Link

あなただけのPHPで滞在したい場合は、テキスト値を提出するからを提供する必要があります。

(免責事項:このソリューションは、非常に悪い習慣です。しかし、それは低レベルで、それを解決する方法についての例です。)

1)フォーム

<input type="text" name="addSelection"> 

2を提供します)ポストリクエストを読みます

$newOption = $_POST["addSelection"]; 

3)(ここでは、セッションは、も可能で

$_SESSION["additionalOptions"][] = $newOption; 

4)標準オプション

$options = ["apple","banana"]; 
$options = array_merge($options,$_SESSION["additionalOptions"]); 

5)HTML

でオプションを作成してマージ)データベースであるどこか新しいオプションを永続します
<select name="fruits"> 
    <?php 
     foreach($options as $option){ 
      echo '<option value="'+$option+'">'+$option+'</option>'; 

     } 
    ?> 
</select> 
+0

感謝。しかし、PHPだけが悪い習慣であると言った理由は何ですか? –

+0

いいえ、Phpは悪いことではありません。私が提供する方法は少しです... Unsave or uncommen、申し訳ありませんが正しい単語を見つけることができません – Mruf

+0

ok ok ..たくさんの...ありがとう:) –

0

se LECT2プラグイン https://github.com/select2/select2

<script type="text/javascript" src="/assets/profile/js/select2.min.fda43621.js"></script> 

var validateTag = function (term, data) { 
    var value = term.term; 
    var re = /^[a-z\d\-_\s]+$/i; 
    if (re.test(value))) { 
     return { 
      id: value, 
      text: value 
     }; 
    } 
    return 'wrong_characters'; 
}; 
$("#selectAlt").select2({tags: true, maximumSelectionLength: 6, maximumInputLength: 20, createTag: validateTag}); 

HTML:

<select name="selectAlt[]" id="selectAlt" multiple="multiple" custom-placeholder="Genre"> 
<option value="Blues">Blues</option>         
<option value="Classic Rock">Classic Rock</option>         
<option value="Country">Country</option> 
</select> 

Preview

関連する問題