Ich habe Diese Zahlung soll:jQuery Fortschrittsbalken springt auf 100%
HTML
<div id="tst_loader"></div>
JAVASCRIPT
$.ajax({
xhr: function() {
var xhr = new window.XMLHttpRequest();
xhr.upload.addEventListener("progress", function(evt) {
if (evt.lengthComputable) {
var percentComplete = evt.loaded/evt.total;
//Do something with upload progress here
$('#tst_loader').html(percentComplete * 100 + '%');
}
}, false);
xhr.addEventListener("progress", function(evt) {
if (evt.lengthComputable) {
var percentComplete = evt.loaded/evt.total;
//Do something with download progress
$('#tst_loader').html(percentComplete * 100 + '%');
}
}, false);
return xhr;
},
type: 'POST',
url: url,
data: {feed:""},
success: function(data){
//Do something on success
alert('done');
}
die PHP-co de:
<?php
$_POST['feed'] = 'http://www.cs.washington.edu/research/xmldatasets/data/tpc-h/orders.xml';/// A little heavier file for testing
$dom = new DOMDocument;
$dom->load($_POST['feed']);
if(false !== $dom){
$use_errors = libxml_use_internal_errors(true);
$s = simplexml_import_dom($dom);
libxml_clear_errors();
libxml_use_internal_errors($use_errors);
//libxml_disable_entity_loader($oldDisable);
if(false !== $s){
$ctr = 0;
foreach ($s->channel->item as $item) {
$out[$ctr]=$item->title;
$ctr++;
}
echo json_encode($out);
}
}
?>
Jedes Mal, wenn der Code ausgeführt wird, springt die progressbar
sofort 100%
obwohl die RSS FEED
noch geholt wird .... in anderen Worten, es gibt keinen Fortschritt zeigt. Alles scheint toll, aber es springt weiter ... Irgendeine Idee, wie man das erreicht? ... Danke!
EDIT:: der Link zu etwas geändert etwas schwerer: http://www.cs.washington.edu/research/xmldatasets/data/tpc-h/orders.xml
Ist die 'event.lengthComputable'? Bei einem PHP-Skript lautet die Antwort normalerweise "Nein", es sei denn, Sie geben explizit den Header "Content-Length" an. – Chris
Könnte XMLHTTPRequest2 bei späteren Browsern weiterhin verwenden –
@Chris wie ** die 'Content-Length' angeben? .... irgendeine Idee? ... Sie können es als Antwort posten, um möglicherweise akzeptiert zu werden. thx –