У меня есть 11 полей текста в моей форме поиска. Я хочу, чтобы пользователь выбирал атрибуты и оставил пустой. Я хотел бы отключить пустые текстовые поля после нажатия кнопки «Отправить». Поскольку пустые поля отправляют пустую строку в мою службу WFS. Можно ли это сделать?Отключить пустое текстовое поле до отправки
Также я хочу уведомить пользователя, если не заполнил ни одно поле.
Заранее спасибо
formPanel = new GeoExt.form.FormPanel({
ref: "formPanel",
title:"Wyszukiwarka",
collapsible: true,
width: 150,
region: "west",
protocol: protocol,
buttons:[
{text: 'Czyść',
width: 60,
handler: function(){
formPanel.getForm().reset();
}},
{
text: "Szukaj",
width: 70,
handler: function() {
formPanel.getForm().search();
},
//scope: formPanel
}],
items: [{
xtype: "numberfield",
name: "trans_id__eq",
cls : 'myCls',
emptyText:"",
value: "",
submitEmptyText: false,
//fieldLabel: "ID",
//disabled: true,
},
{
xtype: "textfield",
name: "dokument__eq",
// emptyText:"Dokument",
cls : 'myCls',
value: "",
disabled: true,
// fieldLabel: "nabywca",
//allowBlank: false
},
{
xtype: "textfield",
name: "data_transakcji__eq",
cls : 'myCls',
//emptyText:"Data Transakcji",
value: "",
//fieldLabel: "ID",
disabled: true,
},
{
xtype: "textfield",
name: "typ_nier__eq",
cls : 'myCls',
// emptyText:"Typ nieruchomości",
value: "",
//fieldLabel: "ID",
disabled: true,
},
{
xtype: "textfield",
name: "cena_tran__eq",
cls : 'myCls',
// emptyText:"Cena transakcji",
value: "",
//fieldLabel: "ID",
disabled: true,
},
{
xtype: "textfield",
name: "cena_1m2_dlk__eq",
cls : 'myCls',
//emptyText:"Cena 1m2",
value: "",
//fieldLabel: "ID",
disabled: true,
},
{
xtype: "textfield",
name: "pow_m2__eq",
cls : 'myCls',
//emptyText:"Powierzchnia",
value: "",
//fieldLabel: "ID",
disabled: true,
},
{
xtype: "textfield",
name: "sprzedawca__eq",
cls : 'myCls',
// emptyText:"Sprzedawca",
value: "",
//fieldLabel: "ID",
disabled: true,
},
{
xtype: "textfield",
name: "nabywca__eq",
cls : 'myCls',
// emptyText:"Nabywca",
value: "",
//fieldLabel: "ID",
disabled: true,
},
{
xtype: "textfield",
name: "wspx__eq",
cls : 'myCls',
// emptyText:"WspX",
value: "",
//fieldLabel: "ID",
disabled: true,
},
{
xtype: "textfield",
name: "wspy__eq",
cls : 'myCls',
// emptyText:"WspY",
value: "",
//fieldLabel: "ID",
disabled: true,
}
],
listeners: {
actioncomplete: function(form, action) {
// this listener triggers when the search request
// is complete, the OpenLayers.Protocol.Response
// resulting from the request is available
// through "action.response"
features = action.response.features;
app.featureGrid.store.loadData(features); //załadowanie zwróconego wyniku wyszukiwania do "app.featureGrid.store"
vm=app.mapPanel.map.getLayersByName("Wynik wyszukiwania");
if(vm.length==0){
vecLayer = new OpenLayers.Layer.Vector("Wynik wyszukiwania");
app.mapPanel.map.addLayer(vecLayer);
app.featureGrid.store.bind(vecLayer);
app.featureGrid.getSelectionModel().bind(vecLayer);
//app.featureGrid.getSelectionModel().bind(vectorLayer);
}
}
}
})
);
Почему вы не просто фильтровать пустые поля Сервер- боковая сторона ? Что делать, если пользователь отключает или не имеет javascript? –
@Bartdude Как можно надеяться запустить приложение ExtJS без javascript? –
@ChrisFarmer: У вас там есть точка ;-) Но если пустые поля могут быть проблемой, в любом случае следует заботиться о том, чтобы все значения не были пустыми. –