2015-04-27 16 views
5

Ho una fisarmonica html in cui sto chiamando il corpo corrispondente tramite data-value con spazio bianco.Tags data-target con (uno spazio bianco) non riconosciuto

intestazione

Fisarmonica:

<div data-toggle="collapse" data-target="#Drug Test">Drug Test</div> 

Fisarmonica corpo:

<div id="Drug Test" class="accordion-body collapse "> 
     <p>Test Data</p>  
    </div> 

Ma cliccando corpo intestazione fisarmonica non si apre dal valore del dato-obiettivo ha space.As bianchi è venuta da database utilizzando che è obbligatorio per la generazione dinamica di fisarmoniche.

Qualcuno può suggerire una soluzione alternativa? PS: Questo deve essere ressolved sul lato client solo

UPDATE: Questo è il mio html sorgente con le direttive angolari

<div class="form-group panel-group" id="accordion" role="tablist" aria-multiselectable="true"> 
           <div ng-repeat="key in keys"> 
            <div class="panel panel-default selectedinvestigations"> 
             <div class="panel-heading"> 
              <i class="glyphicon glyphicon-folder-open pull-right"></i> 
              <input id="btn{{key}}" type="checkbox" class="pull-left" ng-click="selectAll(key)" /> 

              <div class="padLeft" data-toggle="collapse" data-target="#{{key}}">{{key}}</div> 
             </div> 
             <div class="panel-body"> 
              <div id="{{key}}" class="accordion-body collapse "> 
               <div class="" ng-repeat="inv in allInvestigationsGrouped[key]"> 
                <div> 
                 <ul> 
                  <div class="col-md-8 input-group"> 
                   <span class="input-group-addon "> 
                    <input name="checkAll" class="{{key}}" type="checkbox" ng-model="inv.selected" 
                      data-id="{{inv.id}}" 
                      data-name="{{inv.name}}" 
                      data-description="{{inv.description}}" 
                      data-isactive="{{inv.isActive}}" 
                      data-quantity="{{inv.quantity}}" /> 
                   </span> 
                   <label class="form-control">{{inv.name}} </label> 
                  </div> 
                 </ul> 
                </div> 
               </div> 
              </div> 
             </div> 
            </div> 
           </div> 
          </div> 
+5

Gli ID non possono contenere spazi. Mostra come stai generando la fisarmonica. – Satpal

+0

@Satpal Dal momento che viene dal database che utilizza è obbligatorio per la generazione dinamica della fisarmonica. Puoi suggerire una soluzione alternativa? –

+1

Ecco perché ti chiedo di condividere il codice sorgente che genera la fisarmonica. Quindi solo uno può aiutare gli spazi – Satpal

risposta

1

È possibile sostituire lo spazio con _ con lo str_replace in php:

<?php echo str_replace(' ', '_', $row['from_database_table']); ?> 

Prova questo:

<div data-toggle="collapse" data-target="#<?php echo str_replace(' ', '_', $row['from_database_table']); ?>">Drug Test</div> 

<div id="<?php echo str_replace(' ', '_', $row['from_database_table']); ?>" class="accordion-body collapse"> 
     <p>Test Data</p>  
</div> 
0

Lo stai facendo nel modo sbagliato. L'ID non dovrebbe contenere spazio. Quindi, solo rimuovere lo spazio da id e renderlo come qui di seguito

<div id="DrugTest" class="accordion-body collapse "> 
     <p>Test Data</p>  
</div> 

e fisarmonica in questo modo:

<div data-toggle="collapse" data-target="#DrugTest">Drug Test</div> 

per rimuovere lo spazio bianco è necessario scrivere codice lato server come ha detto la sua venuta dal database.

Problemi correlati