今天被Ext.form.Combobox玩能了半天,后来发现原来后台少了这个: response.setContentType("text/xml");
var Employee = Ext.data.Record.create([ { name : 'id', mapping : 'id' }, { name : 'name', mapping : 'name' }, { name : 'occupation' } ]); var myReader = new Ext.data.XmlReader({ totalRecords : "results", record : "row", id : "id" }, Employee); store_featureClass = new Ext.data.Store({ url : 'http://127.0.0.1:8080/WebTemplate_Struts_IBatis/ext/extTestAction.do?method=sendDataToExt', //url: 'http://127.0.0.1:8080/WebTemplate_Struts_IBatis/extTest/sale/sale.xml', method : 'GET', reader : myReader }); combo_featureClass = new Ext.form.ComboBox({ store: store_featureClass, width: 100, displayField: 'name', valueField: 'id', triggerAction: 'all', mode: 'remote', //applyTo: 'featureClassInput' renderTo: 'featureClassDiv' });
servlet:
PrintWriter out = response.getWriter();
response.setContentType("text/xml");
String ret = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>";
ret += "<dataset>";
ret += " <results>2</results>";
ret += " <row>";
ret += " <id>1</id>";
ret += " <name>Bill</name>";
ret += " <occupation>Gardener</occupation>";
ret += " </row>";
ret += " <row>";
ret += " <id>2</id>";
ret += " <name>wv</name>";
ret += " <occupation>Gasdf</occupation>";
ret += " </row>";
ret += "</dataset>";
out.print(ret);
out.flush();
return null;
真让哭笑不得啊!