2017-03-22 4 views
-2

Wie kann ich die vollständige Nachricht auf Modal-Box durch Message_id bekommen?Wie bekomme ich Datensätze über Modal Box über ID? (CodeIgniter)

Es gibt eine Schaltfläche mit dem Namen "Open Complete Message." Wenn ich auf diesen Button klicke, erscheint eine Modal Box mit Demo-Inhalten, einem einfachen Tutorial? Das kann zeigen, wie ich es dynamisch machen kann?

Ich bin ein Neuling, und es wäre zu schätzen, wenn Sie mich wissen, keine unkomplizierte Art und Weise.

Thankyou!

+2

haben Sie etwas versucht? – Omi

+0

Ja, aber fehlgeschlagen. –

+3

aktualisieren Sie einfach Ihren Code hier – Omi

Antwort

1

Sie werden hier vier verschiedene Dinge tun: die Schaltfläche, die modal, die jQuery und die CodeIgniter Controller/Modell Funktionen. In der Theorie werden Sie etwas wie unten tun wollen. In der Praxis werden Sie wahrscheinlich Ihre jQuery und PHP entsprechend anpassen müssen.

THE BUTTON

Die Taste wird die Daten-ID Attribut verwenden, so dass Sie die message_id speichern können Sie erwähnt. Sie werden das wahrscheinlich mit dynamischem PHP füllen.

<button type="button" id="messageButton" class="btn btn-success" title="Open Complete Message" data-id="123">Open Complete Message</button> 

die modale

hier nicht viel zu erklären. Ein Klick auf den Button löst dieses Modal aus (über die jQuery unten). In der Theorie wäre das Modal standardmäßig leer. Die Nachricht/Information innerhalb des Modals wird von der jQuery/PHP-Funktionalität ausgefüllt.

<div class="modal fade" id="messageModal" tabindex="-1" role="dialog" aria-labelledby="messageLabel" aria-hidden="true"> 
    <div class="modal-dialog"> 
     <div class="modal-content"> 
      <div class="modal-header"> 
       <button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">&times;</span></button> 
       <h4 class="modal-title" id="messageLabel"></h4> 
      </div> 
      <div class="modal-body"> 

      </div> 
      <div class="modal-footer"> 
       <button type="button" class="btn btn-default" data-dismiss="modal">Close</button> 
      </div> 
     </div> 
    </div> 
</div> 

DIE JQUERY

$('#messageButton').on('click', function() { 

    var theMessageID = $(this).attr("data-id"); 
    var theURL = '/messages/getmessage/'; //adjust according to your site/setup 

    $.post(url, 
     { 
      MessageID: theMessageID, 
     }, 
     function (data, status) { 
      if (status == 'success') { 

       // loop through data 
       $.each(data, function() { 

        $('#messageLabel').text(this[1]); // message title 
        $('#messageModal .modal-body').html(this[2]); // the actual message 

       }); 

       $('#messageModal').modal('show'); 

      } else { 
       alert('No message available'); 
      } 
     } 
    });//end post 
}); 

DER REGLER

Dies setzt voraus, Sie haben einen Controller Nachrichten mit einer getMessages Funktion sowie ein Nachrichten-Modell mit einer Funktion namens Get Message benannt .

public function getmessage() 
{ 
    // double checking 
    if ($this->input->post('MessageID') && is_numeric($this->input->post('MessageID'))) { 

     $this->load->model('Messages_model'); 
     $theMessage = $this->Messages_model->get_message($this->input->post('MessageID')); 

     header('Content-Type: application/json'); 
     echo json_encode($theMessage); 
    } 
} 

Hoffe das hilft die Ursache. Aber bitte, posten Sie, was Sie versucht haben.