» »

dojo: XmlStore, dijit.form.FilteringSelect

dojo: XmlStore, dijit.form.FilteringSelect

detroit ::

imam file findsec_layer.xml:
<?xml version="1.0" encoding="utf-8"?>
<root>
	<layer>
		<name>layer1</name>
		<id>1</id>
		<fieldz>
			<name>burek<field/>
			<name>burek2<field/>
			<name>burek<field/>
			<name>burek<field/>
			<name>burek<field/>
			<name>burek<field/>
		</fieldz>
	</layer>
	<layer>
		<name>layer2</name>
		<id>2</id>
		<fieldz>
			<name>burek<field/>		
		</fieldz>
	</layer>
</root>

in js:

var ordXml = new dojox.data.XmlStore(
		{
			url: "findsec_layer.xml",
			rootItem: "layer",
			keyAttribute: "id",
			label: "name"
		});


 
		var combo = dojo.byId('slojComboBox');
		combo.store = ordXml;
		combo.searchAttr = "layer";

pa mi ne napolni tega boxa. Se komu sanja zakaj?
Skero

detroit ::

in other words

iz XmlStora bi rad napolnil dijit.form.Select z xmljem po elementu layer
Skero

jernejl ::

Lahko poskusiš s klicem metode combo.setStore namesto combo.store

detroit ::

nea pelje čuj:)
Se še kar ukvarjam s tem
Skero

LeQuack ::

Tisti XML je napačno formatira, zato se ga ne da prebrati, pravilno bi bilo tako:

<?xml version="1.0" encoding="utf-8"?>
<root>
    <layer>
        <name>layer1</name>
        <id>1</id>
        <fieldz>
            <field>burek</field>
            <field>burek2</field>
            <field>burek</field>
            <field>burek</field>
            <field>burek</field>
            <field>burek</field>
        </fieldz>
    </layer>
    <layer>
        <name>layer2</name>
        <id>2</id>
        <fieldz>
            <field>burek</field>   
        </fieldz>
    </layer>
</root>


Primer HTML-ja:
<html>
	<head>
		<link id="themeStyles" rel="stylesheet" href="dijit/themes/claro/claro.css"/>
		<script data-dojo-config="parseOnLoad: true" src="dojo/dojo.js"></script>
		<script type="text/javascript">
			dojo.require("dojox.data.XmlStore");
			dojo.require("dijit.form.ComboBox");
			
			var ordXml = new dojox.data.XmlStore(
			        {
			            url: "findsec_layer.xml",
			            rootItem: "layer",
			            keyAttribute: "id",
			            label: "name"
			        });			  
			  
			dojo.addOnLoad(function() {
				new dijit.form.ComboBox({id: "slojComboBox", store: ordXml, searchAttr: "name"}, "slojComboBox");
			});
		</script>
	</head>
	<body class="claro">
		<input id="slojComboBox" />
	</body>
</html>
Quack !

detroit ::

xml sm vmes že popravil, hmm samo tvojega primera mia pa tudi ne prikaže. firebug pravi:

dojox.data is undefined
[Prekini ob tej napaki]

var ordXml = new dojox.data.XmlStore(



sem tudi deklaracijo xmlOrd v function() spravu pa še vedno nič. Ne vem kaj je fora, sicer pa nimam instaliranega kita dojo ampak uporabljam večinoma tist link
Skero

Zgodovina sprememb…

  • spremenil: detroit ()

detroit ::

sem pa spravil ta deklarejšn od ordXml kar direkt v function() in mi pač ne naredi nič kot vedno.
Je pa res da uporabljam online dojo js ne pa local toolkit.
Skero

LeQuack ::

Priporočam, da si preneseš zadnjo verzijo in jo daš nekam na disk ter odzipaš in ustrezno popraviš povezave na js in css.
http://download.dojotoolkit.org/release...
Quack !

Zgodovina sprememb…

  • spremenil: LeQuack ()

detroit ::

a pa tebi ta primer dela kar si napisal?
Skero

LeQuack ::

Meni dela ta primer ja.
Quack !

detroit ::

danke
Skero


Vredno ogleda ...

TemaSporočilaOglediZadnje sporočilo
TemaSporočilaOglediZadnje sporočilo
»

E-račun

Oddelek: Programiranje
217460 (4223) ivanhoe5x
»

UserControl v Wrappanelu WPF

Oddelek: Programiranje
51142 (964) hurlimannxt
»

getElementsByTagName ne dela v Chromu

Oddelek: Programiranje
141677 (1415) win64
»

[C#] Dodajanje itema v Combobox (trajno)

Oddelek: Programiranje
5884 (808) xtrEeme
»

VC# Zapis podatkov na disk

Oddelek: Programiranje
422501 (1757) matej_jack

Več podobnih tem