diff options
Diffstat (limited to 'includes/js/dijit/tests/form/test_MultiSelect.html')
| -rw-r--r-- | includes/js/dijit/tests/form/test_MultiSelect.html | 138 | 
1 files changed, 138 insertions, 0 deletions
| diff --git a/includes/js/dijit/tests/form/test_MultiSelect.html b/includes/js/dijit/tests/form/test_MultiSelect.html new file mode 100644 index 0000000..9f03d80 --- /dev/null +++ b/includes/js/dijit/tests/form/test_MultiSelect.html @@ -0,0 +1,138 @@ +<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" +	"http://www.w3.org/TR/html4/loose.dtd"> +<html> +<head> +	<title>Testing MultiSelect form widget | The Dojo Toolkit</title> + +	<link rel="stylesheet" type="text/css" media="screen" +		href="../../../dijit/themes/tundra/tundra.css"> + +	<style type="text/css"> +	@import "../../../dijit/tests/css/dijitTests.css"; +	#select, #select2 { +		width:255px; +		height:300px; +		overflow:auto; +	} +	</style> +	 +	<script type="text/javascript" djConfig="isDebug:true, parseOnLoad: true" +		src="../../../dojo/dojo.js"></script> + +	<script type="text/javascript"> +		var globalVals = null; + +		dojo.require("dijit.form.MultiSelect"); + +		// needed for tests: +		dojo.require("dijit.form.Form"); +		dojo.require("dijit.form.Button"); +		dojo.require("dijit.layout.SplitContainer"); + +		dojo.addOnLoad(function(){ +			 +			// ref a clonable node, then split it between two selects +			var c = dojo.query(".clone")[0]; +			var l = -1; +			opt = function(){			 +				return dojo.byId((++l%2 == 0 ? "select":"select2" )); +			} +			// based on the the 'dijit' object +			for(var i in dijit){ +				var n = opt().appendChild(dojo.clone(c)); +				n.value = n.innerHTML = i; +			} +			 +			// turn any non-dojoType selects into widgets programatically: +			dojo.query("select").forEach(function(n){ +				if(!dijit.byNode(n)){ +						var foo = new dijit.form.MultiSelect({ +						},n); +				} +			}); +			 +			// listen to the "move items" buttons +			dojo.query("button.switch") +				.connect("onclick",function(e){ +					switch(e.target.id.toString()){ +						case "left" : dijit.byId("select").addSelected(dijit.byId("select2")); break; +						case "right" : dijit.byId("select2").addSelected(dijit.byId("select")); break; +					}	 +			}); +			 +			// listen to the invert buttons +			dojo.query("button.invert") +				.connect("onclick",function(e){ +					switch(e.target.id.toString()){ +						case "i1" : dijit.byId("select").invertSelection(); break; +						case "i2" : dijit.byId("select2").invertSelection(); break; +						case "i3" : dijit.byId("select3").invertSelection(); break; +					} +			}); +				 +			// there is only one debug button +			dojo.query(".debug").connect("onclick",function(e){ +				console.log('select getValue:',dijit.byId("select").getValue()); +				console.log('select2 getValue:',dijit.byId("select2").getValue()); +				console.log('select3 getValue:',dijit.byId("select3").getValue()); +			}); +				 +			// natural form reaction: +			dojo.connect(dojo.byId("test"),"onsubmit",function(e){ +				e.preventDefault();	 +			}); +			dojo.connect(dojo.byId("formSubmit"),"onclick",function(e){ +				// see what the real form says about our widgets: +				var vals = dojo.formToJson("test"); +				console.log(vals); +			}); +		}); +	</script> +</head> +<body class="tundra" style="padding:20px"> +		 +		<h1 class="testTitle">dijit.form.MultiSelect:</h1> +		 +		<form action="null.html" method="get" id="test"> +		 +			<select id="select" multiple="true" size="7" name="easing"> +				<option class="clone" value="dojo._defaultEasing">dojo._defaultEasing</option> +			</select> +		 +			<span> +				<button class="switch" id="left"><</button> +				<button class="switch" id="right">></button> +			</span> +	 +			<select id="select2" multiple="true" size="7" name="second">	 +			</select> +	 +			<br><br> +	 +			<button class='invert' id="i1">invert first list</button> +			<button class="invert" id="i2">invert second list</button> +			<button id="formSubmit">Submit</button> + +		</form> + +		<button class="debug">call getValue()</button> + +		<h3>markup:</h3> + +		<select id="select3" multiple="true" name="select3" +			dojoType="dijit.form.MultiSelect" +			style="height:200px; width:175px; border:5px solid #ededed;"> + +			<option value="TN" selected="true">Tennessee</option> +			<option value="VA">Virginia</option> +			<option value="WA">Washington</option> +			<option value="FL">Florida</option> +			<option value="CA">California</option> + +		</select> + +		<br><br> +		<button class='invert' id="i3">invert markup list</button> +		<button class='set' id="s1" onclick="dijit.byId('select3').setValue(['VA', 'WA']);">set markup list to [VA, WA]</button> +</body> +</html> | 
