blob: 68f37102611189ea664bdacdfdfe71312947870a [file] [log] [blame]
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>dojox.Grid with Dojo.Data model with trapping of data store errors.</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"></meta>
<style type="text/css">
@import "../../../../dijit/themes/tundra/tundra.css";
@import "../../../../dojo/resources/dojo.css";
@import "../../../../dijit/tests/css/dijitTests.css";
@import "../../_grid/tundraGrid.css";
#grid{
width: 65em;
height: 25em;
padding: 1px;
}
</style>
<script type="text/javascript" src="../../../../dojo/dojo.js"
djConfig="isDebug: true, debugAtAllCosts: false, parseOnLoad: true"></script>
<script type="text/javascript">
dojo.require("dojox.grid.Grid");
dojo.require("dojox.data.CsvStore");
dojo.require("dojo.parser");
</script>
<script type="text/javascript">
var layoutMovies = [
{ cells: [[
{ name: "Title", field: "Title", width: 'auto' },
{ name: "Year", field: "Year", width: 5 },
{ name: "Producer", field: "Producer", width: 20 }
]]}
];
</script>
</head>
<body class="tundra">
<h1>dojox.Grid using Dojo.Data stores via simple binding</h1>
<h2>dojox.data.CsvStore:</h2>.
<i>This grid does not load data. The data store references a non-existent URL on purpose. It should trigger a failure that we catch and display in an alert</i>
<span dojoType="dojox.data.CsvStore"
jsId="csvStore" url="support/NoSuchMovieFile.csv">
</span>
<span dojoType="dojox.grid.data.DojoData"
jsId="dataModel"
store="csvStore"
rowsPerPage="5"
query="{ Title: '*' }"
clientSort="true">
<!--
This uses the dojo/connect API to link to the processError handler of the model.
It allows a declarative way to hook to the handler on the model.
-->
<script type="dojo/connect" event="processError" args="error, request">
alert("Error was encountered when store was queried: " + dojo.toJson(error, true));
</script>
</span>
<div id="grid" dojoType="dojox.Grid" elasticView="2"
model="dataModel" structure="layoutMovies">
</div>
</body>
</html>