or
class customerModel extends kendo.data.Model {
constructor() {
super();
super.init(this);
this.id = "CustomerID";
this.fields = new kendo.data.DataSourceSchemaModelFields();
}
}
<
div
data-role
=
"modalview"
id
=
"modalview-login"
style
=
"width: 90%;"
>
<
div
data-role
=
"header"
>
<
div
data-role
=
"navbar"
>
<
span
>Login</
span
>
<
a
id
=
"modalview-cancel-button"
data-click
=
"closeModalViewLogin"
data-role
=
"button"
data-align
=
"right"
>Cancel</
a
>
</
div
>
</
div
>
<
ul
data-role
=
"listview"
data-style
=
"inset"
>
<
li
>
<
label
for
=
"username"
>Username:
<
input
type
=
"email"
id
=
"username"
placeholder
=
"Enter Username"
autofocus/>
</
label
>
</
li
>
<
li
>
<
label
for
=
"password"
>Password:
<
input
type
=
"password"
id
=
"password"
placeholder
=
"Enter Password"
/>
</
label
>
</
li
>
</
ul
>
<
a
data-click
=
"logMeIn"
id
=
"modalview-login-button"
type
=
"button"
data-role
=
"button"
>Login</
a
>
</
div
>
function
logMeIn() {
// console.log("function logMeIn() called.");
$(
"#logged-in-text"
).text(
"Attempting Login."
);
kendoMobileApplication.showLoading();
var
uName = $(
"#username"
).val();
var
pWord = $(
"#password"
).val();
// Create a session object and attempt login
var
sess =
new
SessionObj();
// console.log("Starting API call.");
sess.login(window.SESSIONAPI, uName, pWord, window.SITEKEY,
function
(s) {
if
(s.isAuthenticated) {
$(
"#logged-in-text"
).text(
"Login Successful."
);
// kendoMobileApplication.navigate("main.html");
window.location.href =
"main.html"
;
}
else
{
$(
"#logged-in-text"
).text(
"Login Failed."
);
}
kendoMobileApplication.hideLoading();
$(
"#modalview-login"
).kendoMobileModalView(
"close"
);
});
}
describe(
"Bad Login"
,
function
() {
it(
"Should display error message if login fields are invalid"
,
function
() {
uit.url(
"/"
);
uit.runs(
function
($) {
// display login dialog
$(
"#modalview-open-button"
).mousedown().mouseup();
expect($(
"#modalview-login"
).is(
":visible"
)).toBeTruthy();
// fill in fields and submit form
$(
"#username"
).val(
""
);
$(
"#password"
).val(
"123456"
);
$(
"#modalview-login-button"
).mousedown().mouseup();
});
uit.runs(
function
($) {
expect($(
"#logged-in-text"
).text()).toBe(
"Invalid login/password."
);
});
});
it(
"Should display error if invalid login."
,
function
() {
expect(
true
).toBe(
false
);
});
});
require.config({
paths: {
"jquery"
: [
"jquery-1.10.2.min"
],
"kendo"
: [
"kendo/kendo.web.min"
],
"kendo-cultures-en-gb"
: [
"kendo/cultures/kendo.culture.en-GB.min"
],
"bootstrap"
: [
"bootstrap.min"
]
},
shim: {
'bootstrap'
: {
deps: [
'jquery'
]
},
"kendo"
: {
deps: [
"jquery"
]
},
"kendo-cultures-en-gb"
: {
deps: [
"kendo"
]
}
}
});
var
Treeview = React.createClass({
render:
function
() {
return
(
<div>
Custom markup
<div><!-- build kendo treeview here --></div>
</div>
);
}
});
React.renderComponent(Treeview({
// kendo treeview plugin arguments passed here as
// react component properties as an example
dataSource: {
data:[
/*...*/
]
}
}), document.body)
js k-ff k-ff24
js no-flexbox flexboxlegacy canvas canvastext webgl no-touch geolocation postmessage no-websqldatabase indexeddb hashchange history draganddrop websockets rgba hsla multiplebgs backgroundsize borderimage borderradius boxshadow textshadow opacity cssanimations csscolumns cssgradients no-cssreflections csstransforms csstransforms3d csstransitions fontface generatedcontent video audio localstorage sessionstorage webworkers applicationcache svg inlinesvg smil svgclippaths js k-ff k-ff24