2015-08-21 11 views
12

su Mac Safari (e versioni precedenti di FF V.38 e anziani) stiamo ricevendo il seguente errore:Safari - Errore: Errore di sintassi, l'espressione non riconosciuto: ingresso [dati-card-type = "pagamento-one

errore: errore di sintassi, l'espressione non riconosciuto: ingresso [dati-card-type = "pagamento-one"

jQuery Versione: https://ajax.googleapis.com/ajax/libs/jquery/2.1.4/jquery.min.js

$(this).change(function() { 
    if($(this).val() != '') { 
    $('input[data-card-type="'+paymentGroup+'"').val('').prop('disabled',true); 

in Console di Safari, in rosso si legge: Errore: Errore di sintassi, l'espressione non riconosciuto: ingresso [-card-tipo di dati = "pagamento-one e sotto l'errore si legge: (funzione anonima)

Fa tutto questo guardare come è in conflitto con jQuery 2.1.4 o forse c'è qualcos'altro non corretto?

+0

hanno perso la parentesi di chiusura! Tutti qui si infrangono! Grazie grazie! FANTASTICO! – caroline

risposta

29

Questo sembra essere un problema di Safari, ma in realtà non avrebbe mai dovuto funzionare. Devi chiudere l'istruzione [data-card-type=paymentGroup, senza che finisca lo ] Safari eseguirà un attacco. Lo so per esperienza. Chrome (il mio browser principale di sviluppo) lascerà volare questo senza un solo peep, ma Safari si interrompe (e, giustamente, non è valido).

Sostituire il codice con questo:

$(this).change(function() { 
    if($(this).val() != '') { 
    $('input[data-card-type="'+paymentGroup+'"]').val('').prop('disabled',true); 
+1

Grazie mille ericjbasti! E 'stato ... funziona perfettamente! Grazie per il tuo tempo! – caroline

+3

Sì, tutti i browser tranne Safari su Windows e iPhone lasciano scorrere questo errore! –

+0

Sono così stupido xD Grazie, stavo pensando ai problemi di compatibilità di Safari ma getta l'errore anche nell'APP di Chrome per iOS. Questo mi ha fatto pensare che ero davvero io. Grazie! – manuman94

Problemi correlati