2015-11-17 1 views
1

J'ai écrit un code qui envoie un courriel à des personnes sélectionnées en utilisant la case à cocher, maintenant je dois ajouter tout sélectionner et effacer tout le bouton afin que toutes les cases à cocher sélectionné/désélectionné.Comment sélectionner et effacer toutes les cases à cocher en utilisant Laravel

Voici mon code:

Mon contrôleur:

public function display(){ 
     $data = Input::get('agree'); 
     $count = count ($data); 
     $this->contact($data); 
     return view('clientinfo.display', compact('data','count')); 
    } 

Mon Vue:

@extends('app') 
@section('content') 

    <h1>Welcome! Send e-mail to selected people.</h1> 
    <hr> 
    {!! Form::open(array('action' => '[email protected]','method' => 'GET'))!!} 
     @foreach($clients as $client) 
      {!! Form::checkbox("agree[]", $client->email, null,['id' => $client->email]) !!} 
       <article> 
        {{ $client->user_name }} 
        &nbsp; 
        {{ $client->email }} 

       </article> 
     @endforeach 
     {!! Form::submit('Send Mail',['class' => 'btn btn-primary form-control']) !!} 

    {!! Form::close() !!} 
    <br/> 
    @include('clientinfo.newmember') 
@stop 

si j'ajouter un bouton à mon avis nommant select-tout et claire tout comment Est-ce que je les relie, pour sélectionner tous les membres dans la liste?

Répondre

0

avoir apporté des modifications à mon code et cela a fonctionné en utilisant JavaScript .

Voici mon code:

@extends('app') 
@section('content') 

    <h1>Welcome! Send e-mail to selected people.</h1> 
    <hr> 
    {!! Form::open(array('action' => '[email protected]','method' => 'GET','name'=>'f1' , 'id'=>'form_id'))!!} 
    <br/> 
     @foreach($clients as $client) 
      <div class="form-group"> 
      {!! Form::checkbox("agree[]", $client->email, null,['id' => $client->email], ['class' => 'questionCheckBox']), $client->email !!} 
      <br/> 
      </div> 
     @endforeach 
    <div class="form-group"> 
    {!! Form::submit('Send Mail',['class' => 'btn btn-primary form-control']) !!} 
    </div> 

    <div class="form-group"> 
    {!! Form::button('Select All',['class' => 'btn btn-info form-control','onClick'=>'select_all("agree", "1")']) !!} 
    </div> 

    <div class="form-group"> 
    {!! Form::button('Clear All',['class' => 'btn btn-danger form-control','onClick'=>'select_all("agree", "0")']) !!} 
    </div> 

    {!! Form::close() !!} 
@stop 
@endsection 

Et dans mon fichier maître, j'ai ajouté un JavaScript:

<script type="text/javascript"> 

    var formblock; 
    var forminputs; 

    function prepare() { 
     formblock= document.getElementById('form_id'); 
     forminputs = formblock.getElementsByTagName('input'); 
    } 

    function select_all(name, value) { 
     for (i = 0; i < forminputs.length; i++) { 
      // regex here to check name attribute 
      var regex = new RegExp(name, "i"); 
      if (regex.test(forminputs[i].getAttribute('name'))) { 
       if (value == '1') { 
        forminputs[i].checked = true; 
       } else { 
        forminputs[i].checked = false; 
       } 
      } 
     } 
    } 

    if (window.addEventListener) { 
     window.addEventListener("load", prepare, false); 
    } else if (window.attachEvent) { 
     window.attachEvent("onload", prepare) 
    } else if (document.getElementById) { 
     window.onload = prepare; 
    } 
</script> 

plus tôt, je faisais cela en utilisant Jquery, qui ne fonctionnait pas, alors j'ai essayé d'utiliser JavaScript et cela a fonctionné. J'ai essayé plusieurs façons d'ajouter jquery dans mon code qui sont donnés dans les réponses de stackoverflow.com, mais rien n'a fonctionné dans laravel. Si quelqu'un sait comment utiliser jquery dans laravel, s'il vous plaît laissez un commentaire.

0

Vous pouvez donner une classe aux cases à cocher et utiliser jquery. Vous devez également cocher "Sélectionner tout" avec un ID.

$(function() { 

    $('#selectAll').click(function() { 
     if ($(this).prop('checked')) { 
      $('.your_checkbox_class').prop('checked', true); 
     } else { 
      $('.your_checkbox_class').prop('checked', false); 
     } 
    }); 

}); 

PS: Code n'a pas été testé

+0

@Kiwi_Juicer: Pouvez-vous me dire comment utiliser jquery dans laravel? – Shweta

+0

Désolé pour la réponse tardive. Vous devriez être en mesure d'inclure la bibliothèque en fonction de ce post: http://stackoverflow.com/questions/32498328/how-to-add-jquery-in-laravel-project – KiwiJuicer