簡體   English   中英

如何在用逗號分隔的文本框中獲取多個值

[英]How to Fetch Multiple Values in Textbox separated by comma

我有一個下拉框和一個文本框。 基於我的下拉選擇文本框以及數據庫值進行檢索。 實際上,它工作正常,沒有任何問題。 但是我的問題是數據庫在特定的下拉選擇中具有兩個或多個文本框值。 因此,我想如果多個文本框值進入相同的下拉選擇,則它將在文本框中顯示所有值,並以逗號(,)分隔。 任何幫助,不勝感激。

這是我使用的代碼供您參考:

<select name="cat" id="cat">
        <option disabled selected value> -- select an option -- </option>
        <option value="1">Stencil Team</option>
        <option value="2">Tooling Team</option>
        <option value="3">IT</option>
        <option value="4">Manager</option>
        </select>

        <input name="phoneNumber" id="pnum"  type="text">

jQuery:

<script type="text/javascript">
            $(document).ready(function(){
                $("#cat").change(function(){
                    var deptid = $(this).val();
                    $.ajax({
                        url: 'ajaxdropdown.php',
                        type: 'post',
                        data: {depart:deptid},
                        dataType: 'json',
                        success:function(response){
                           var len = response.length;                       
                            $("#pnum").empty();
                            for( var i = 0; i<len; i++){
                                var id1234 = response[i]['id123'];
                                var name1234 = response[i]['name123'];

                              $("#pnum").val(name1234);
                            }
                        }
                    });
                });

            });
        </script>

Ajax頁面:-

<?php
include('config.php');
// Check connection
if (!$db) {
 die("Connection failed: " . mysqli_connect_error());
}

$departid = $_POST['depart']; 

$sql = "SELECT Emp_Id,Mobile_Number FROM admin_panel WHERE Category=".$departid;

$result = mysqli_query($db,$sql);

$users_arr = array();

while( $row = mysqli_fetch_array($result) ){
    $userid = $row['Emp_Id'];
    $name = $row['Mobile_Number'];
    $users_arr[] = array("id123" => $userid, "name123" => $name);
}

echo json_encode($users_arr);
?>

我的樣本數據:

Category Mobile_Number
  IT      9629292929
  IT      8888888888
  IT      5623566666

如果我選擇下拉類別“ IT”,那么我希望我的文本框Mobile_Number輸出看起來像這樣:

9629292929,8888888888,5623566666

您可以簡單地遍歷json_encode() d數組。

然后使用PHP的內置函數implode()將字符串中的數組值連接/插入到一個逗號分隔的字符串中

$arr = json_decode($yourArray);
$mobiles = array();
if (! empty($arr)) {
 foreach ($arr as $elem) {
  $mobiles[] = $elem['Mobile_Number'];
 }
}
$mobileStr = ! empty($mobiles) ? implode(',', $mobiles) : '';

現在,在文本框中將此$mobileStr用作value="$mobileStr"

您可以使用javascript的join函數。 請參考以下帖子。 https://www.w3schools.com/jsref/tryit.asp?filename=tryjsref_join

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM