टाइपहेड की सहायता से, मैं दो डेटा वाले मान लौटा रहा हूं। मुझे इस डेटा को दो अलग-अलग क्षेत्रों में विभाजित करने की आवश्यकता है।

$(document).ready(function(){
  $('#mail_field').typeahead({
	source:  function (query, process) {
		return $.post('http://127.0.0.1:8000/api/userdetailstypeahead', { query: query }, function (data) {
			//console.log(data);
			return process(data); //sample result in the #mail_field: John.Doe@jjc.com - Accounting  
                                              //want data to split into two separate fields 
		  });
	  }
  });
  $('#department_field').typeahead({});
});
</script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/bootstrap-3-typeahead/4.0.2/bootstrap3-typeahead.min.js"></script>
if(count($results)){
$sugge = [];
  foreach($results as $user){
    $temp =[];
    $temp["department"] = $user->department[0];
    $temp["mail"] = $user->mail[0];
    $sugge[] = $temp;
  }

  $result["data"] = $sugge;
  $result["success"] = 1; 

  foreach($result["data"] as $user){
    $data[] = "{$user["mail"]} - {$user["department"]}" ; // I need the mail and department in 2 different fields
  }
  return response()->json($data);
}
0
Samuel Omopariola 4 नवम्बर 2019, 13:24

2 जवाब

दो चर घोषित करें:

var f1 = {};
var f2 = {};

आपकी प्रतिक्रिया में:

f1 = data.field1;
f2= data.field2;
1
theduck 6 नवम्बर 2019, 16:01

यह उपरोक्त समस्या का समाधान है जो डेटा के ऑब्जेक्ट के रूप में फ़ोरैच लूप से मानों को पारित करने की अनुमति देता है और परिणामस्वरूप इसे स्क्रिप्ट में उपयोगकर्ता डेटा.मेल और डेटा.विभाग को पुनः प्राप्त करने में सक्षम होता है।

foreach($result["data"] as $user){
  //$data[] = "{$user["mail"]}" ;
  if($user['mail'] != null ){
    $data['mail'][] = $user['mail'];
    $data['department'][$user['mail']] = $user['department'];
  }
}

<script>
  $(document).ready(function(){
  $('#mail_field').typeahead({
    source:  function (query, process) {
    return $.post('http://127.0.0.1:8000/api/userdetailstypeahead', { query: query }, 
    function (data) {
        //console.log(data.mail);
        //console.log(data.department);
        window.department = data.department;
        return process(data.mail);
      });
  },
  afterSelect : function(value){
    console.log(window.department[value]);
    //console.log(value);
    //console.log(window.department);
    $('#department_field').val(window.department[value]);
  }
});
});
</script>
0
Samuel Omopariola 5 नवम्बर 2019, 12:26