combine two OCG filters in Openlayers : ERROR: invalid input syntax for integer

المشرف العام

Administrator
طاقم الإدارة
i need to combine two OCG filters. each one works fine separably but if i combine them using Filter.Logical.OR, the first one works only.

var c_filter = new OpenLayers.Filter.Logical({ type: OpenLayers.Filter.Logical.OR, filters: [ new OpenLayers.Filter.Comparison({ type: OpenLayers.Filter.Comparison.EQUAL_TO, matchCase:false, property: 'id', value:(document.getElementById("Text")).value }), new OpenLayers.Filter.Comparison({ type: OpenLayers.Filter.Comparison.LIKE, matchCase:false, property: 'name', value: "*" +(document.getElementById("Text")).value + "*" }) ] }); as you can see, the first one expect integer and the other one a string. also i tried:

var id_filter = new OpenLayers.Filter.Comparison({ type: OpenLayers.Filter.Comparison.EQUAL_TO, matchCase:false, property: 'id', value:(document.getElementById("searchText")).value }); var name_filter = new OpenLayers.Filter.Comparison({ type: OpenLayers.Filter.Comparison.LIKE, matchCase:false, property: 'name', value: "*" +(document.getElementById("searchText")).value + "*" }); var orFilter = new Array(); orFilter.push(id_filter); orFilter.push(name_filter); wfsProtocol.read({ filter: new OpenLayers.Filter.Logical({ type: OpenLayers.Filter.Logical.OR, filters: orFilter }), callback: processTheQuery, scope: strategy }) and still, the id_filter works fine. but the name_filter i got the error: ERROR: invalid input syntax for integer: "test name" i don't understand why it should be integer !! and if i try name_filter alone, it works fine !



أكثر...
 
أعلى