GWT'de yazılan web uygulamasından sunucuya dosya yükleme gereksinimim var. Karmaşık kısım, FileUpload iletişim kutusunun diskaled edilememesidir (TabPanel'deki boşluk sorunu nedeniyle). Yani bir düğmeye tıklayarak, ben gerekir: GWT - FileUpload iletişim kutusunu kullanmadan dosyaya dosya yükleme
- Açık dosya seçimi
final FileUpload upload = new FileUpload();
upload.setVisible(false);
upload.setName("uploadFormElement");
panel.add(upload);
panel.add(new Button("Select File", new ClickListener()
{ public void onClick(Widget pSender)
{
jsClickUpload(upload.getElement());
MessageBox.showMessage("selected filename: " + upload.getFilename());
}
}));
native void jsClickUpload(Element pElement) /*-{ pElement.click(); }-*/;
:
Ben düğmeyi tıklamak üzerinde iletişim kutusunu seçmek dosyayı açmak için GWT aşağıdaki kodu yazdım Düğme tıklatıldığında aynı anda dosya adı için boş bir değer içeren mesaj kutusu gösterilir.
İhtiyacım olan şey, yalnızca dosya seçildikten sonra, mesaj kutusu görüntülenir. Bunu nasıl yapabilirim? .
public void onModuleLoad() {
final FileUpload upload = new FileUpload();
upload.setVisible(false);
upload.setName("uploadFormElement");
RootPanel.get().add(upload);
Button b = new Button("Select File");
b.addClickHandler(new ClickHandler() {
@Override
public void onClick(ClickEvent event) {
jsClickUpload(upload.getElement());
}
});
upload.addChangeHandler(new ChangeHandler() {
@Override
public void onChange(ChangeEvent event) {
Window.alert(upload.getFilename());
}});
RootPanel.get().add(b);
}
native void jsClickUpload(Element pElement) /*-{
pElement.click();
}-*/;
yüklemeyi alma Servlet ihtiyaç Bu ek kütüphane kullanımı Yüklemek için: http://code.google.com/p/gwtupload/ Ayrıca, bu nasıl (M İşte
Hayır, işe yaramıyor. Dosya seçildikten sonra MessageBox'ı göremiyorum. İhtiyacım olan şey, SADECE dosya seçildikten sonra, gerçek yüklemenin tetiklendi (MessageBox test için sadece bir plaitor tutucu, gerçek servlet yükleme kodu ile değiştirilecektir) . –
Ben değiştiriyorum d çalışma örneğiyle cevap. Bu kod, GWT 2.4.0 – newnoise
'u kullanarak benim için gayet iyi çalışıyor ancak yardımın için gerçekten çok teşekkür ederim, ancak benim için işe yaramıyor. Window.alert'i göremiyorum. Ben GWT 2.3.0 kullanıyorum ve aynı FF tarayıcıda (son sürümü) test ediyorum, ama bunun çok önemli olduğunu düşünmüyorum. –