αρχείο pdf μου δεν έχει επιλεγεί σε πρώτη φάση, μόνο στον Internet Explorer

ψήφοι
13

Έχω ένα αρχείο εισόδου για να επιλέξετε αρχεία PDF. Αφού επιλέξετε τα αρχεία pdf, είναι ανοιχτά πλαίσια κειμένου για να δώσει έναν τίτλο σε κάθε pdf.

Τα πάντα λειτουργεί σωστά στο Google Chrome.

Στον Internet Explorer Είμαι έχοντας ένα πρόβλημα που δεν είμαι σε θέση να καταλάβω γιατί και πώς να λύσει.

Πρόβλημά μου:

Στον Internet Explorer όταν επιλέγετε ένα pdf για πρώτη φορά, τίποτα δεν συμβαίνει, το pdf δεν είναι επιλεγμένο.

Θα πρέπει να επιλέξετε άλλες pdf, αλλά μπορείτε να είναι η πρώτη pdf επιλεγεί, και όταν επιλέγω άλλες pdf λειτουργεί.

Και τότε αρχίζει να λειτουργεί πάντα μια χαρά, αλλά η πρώτη φορά που επιλέγετε ένα pdf έχω πάντα αυτό το σφάλμα.

Μπορείτε να δείτε το πλήρες παράδειγμα μου με το θέμα μου εδώ : http://jsfiddle.net/j5yeq/3/ (αλλά για να δούμε το θέμα μου, θα πρέπει να δοκιμάσετε στον Internet Explorer)

Html μου:

<div class=galerry>               
    <div class=label style=margin:0;>
        <span class=field>PDFS:</span>
        <input type=file name=pdfs[] class=j_galleryp multiple=multiple accept=application/pdf  />
        <div class=j_gfalsep>Selecione quantos pdfs quiser</div>
        <img src=img/upload.png class=j_gsendp alt=Enviar Capa title=Enviar Capa style=margin:0 0 10px 10px; />   
        <div class=label id=teste></div> 
    </div>
</div>

jQuery μου:

$('.j_gsendp').click(function(){
    $('.j_galleryp').click().change(function(){
         var allFiles = this.files;  
         var numFiles = this.files.length;

        $('.j_gfalsep').animate({width:'500'}, 500, function(){
            $(this).html('You selected<strong>'+ numFiles +'</strong> files.'); 

            for(var i = 0; i<numFiles; i++) {
                var file = allFiles[i],
                    name = file.name;
                $('#test').append('<div class=message>Give a title to pdf <strong>'+name+':</strong></div><span>Title for pdf '+name+':</span><input type=text name=title[] value=/><br><br>');
             } 
            });
              this.val('');
        });
    });
});
Δημοσιεύθηκε 09/08/2014 στις 21:28
χρήστη
Σε άλλες γλώσσες...                            


1 απαντήσεις

ψήφοι
1

Μπορείτε jQuery κώδικα έχει κάποια λάθη. Δεν μπορώ να βρω τη λύση για IE προς το παρόν, αλλά ακόμη και σε Chrome και Firefox αυτό προσθήκες κώδικα pdf δύο φορές από τη δεύτερη φορά. Έχω τροποποιήσει το jQuery για να λειτουργήσει σωστά.

$('.j_gsendp').click(function(){
    $('.j_galleryp').trigger('click');
});

$('.j_galleryp').change(function () {
    update();    
});

function update(){
    var input = $('.j_galleryp')[0];
    var allFiles = input.files;
    var numFiles = input.files.length;
    alert(numFiles);
    $('.j_gfalsep').animate({
        width: '400'
    }, 500, function () {
        $(this).html('You select <strong>' + numFiles + '</strong>files.');
        for (var i = 0; i < numFiles; i++) {
            var file = allFiles[i],
                name = file.name;
            $('#test').append('<span class="field">Title of pdf ' + name + ':</span><input type="text" name="title[]" value="' + name + '"/><br><br>');
        }
    });
}

Χρησιμοποιήστε αυτόν τον κωδικό jQuery και δεν δεσμεύουν χειρισμού συμβάντων μέσα σε άλλα χειρισμού συμβάντων. Μπορείτε να καταλήξετε δεσμευτική ίδιο γεγονός πολλές φορές.

ΣΗΜΕΙΩΣΗ: Δεν μπορείτε να επεξεργαστείτε το θέμα, έτσι απάντησα αυτό ως λύση.

Απαντήθηκε 11/08/2014 στις 11:35
πηγή χρήστη

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more