2010-08-20 19 views

risposta

0

Rimuovere il muiltiple="multiple" nella seguente riga:

<select id="id" name="name" multiple="multiple"> 

Quindi, è buono come la rimozione di tale attributo. Vorrei usare jQuery.

-2

Per quanto riguarda la domanda, disabilitare la selezione multipla è abbastanza semplice? Non è vero?

<select multiple="multiple" disabled = "true"> 
    <option value="1"> One 
    <option value="2"> Two 
    <option value="3"> Three   
</select> 
0

con questo codice è possibile disattivare multiselect:

document.getElementById('mySelectBox').removeAttribute("multiple");; 

... di un selectbox come questo:

<select multiple="multiple" id="mySelectBox"> 
    <option value="1">One</option> 
    <option value="2">Two</option> 
    <option value="3">Three</option>   
</select> 

(non testato)

7

In non fare sapere qualsiasi impostazione per disabilitarla.

gestire l'evento onSelectedRowsChanged e fare qualcosa di simile:

var selectedRows = grid.getSelectedRows(); 
if(selectedRows.length > 1) { 
    grid.setSelectedRows([ selectedRows[ selectedRows.length - 1 ] ]); 
} 
+1

A meno che non è un modo per sopprimere di nuovo l'evento, non è un ciclo chiuso? – reergymerej

9

So che questa è una vecchia questione, ma gli aggiornamenti Slickgrid ora consentono di disattivare MultiSelect nelle opzioni della griglia:

var options = { 
      editable: false, 
      enableCellNavigation: true, 
      asyncEditorLoading: false, 
      multiSelect: false 
     }; 

Con questa opzione, facendo clic tenendo premuto un tasto CTRL o MAIUSC non fa nulla, e indesiderabilmente, non è possibile deselezionare una cella con Ctrl + clic o fare nuovamente clic sulla cella selezionata

+0

Questo non impedisce a qualcuno di tenere premuto il tasto MAIUSC e quindi il tasto freccia per il multiselezione .... – benjaminz