var
data =
new
kendo.data.DataSource({
transport: {
read:
function
(options) {
$.ajax( {
url:
"http://localhost/Projects/rpc"
,
contentType:
"application/json"
,
dataType:
"json"
,
data: JSON.stringify({
"method"
:
"breq.getBreqs"
}),
type:
'POST'
,
success:
function
(result) {
//alert("success");
options.success(result)
},
error:
function
(jqXHR, textStatus, errorThrown) {
alert(
"Error: "
+ textStatus);
options.error(jqXHR, textStatus, errorThrown)
},
});
}
},
serverPaging:
true
,
pageSize: 10,
schema: {
data:
"result"
},
});
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<
html
xmlns
=
"http://www.w3.org/1999/xhtml"
>
<
head
>
<
title
>Text Field Autofocus</
title
>
<
link
href
=
"kendo.mobile.all.min.css"
rel
=
"stylesheet"
type
=
"text/css"
/>
<
script
src
=
"jquery-1.7.2.min.js"
type
=
"text/javascript"
></
script
>
<
script
src
=
"kendo.mobile.min.js"
type
=
"text/javascript"
></
script
>
</
head
>
<
body
>
<
div
id
=
"one"
data-role
=
"view"
>
<
div
class
=
"km-navbar"
data-role
=
"navbar"
>
Page 1
</
div
>
<
br
/>
<
span
>Click the button to be taken to the 2nd page</
span
>
<
br
/>
<
br
/>
<
a
class
=
"km-button"
href
=
"#two"
>Go To Page 2</
a
>
</
div
>
<
div
id
=
"two"
data-role
=
"view"
data-show
=
"focusTextbox"
> <!-- function call does not work here -->
<
div
class
=
"km-navbar"
data-role
=
"navbar"
>
<
a
class
=
"km-button km-back"
onclick
=
"javascript:history.go(-1)"
data-align
=
"left"
>Back</
a
>
<
input
id
=
"input"
type
=
"search"
data-align
=
"left"
placeholder
=
"Search Box"
/>
</
div
>
<
br
/>
<
span
>The text field should be programatically focused on the view's show event.</
span
><
br
/>
<
br
/>
<
button
onclick
=
"focusTextbox()"
>Manually Focus</
button
> <!-- calling from here works -->
</
div
>
</
body
>
<
script
type
=
"text/javascript"
>
var app = new kendo.mobile.Application($(document.body));
function focusTextbox() {
$("#input").focus();
}
</
script
>
</
html
>
setTimeout(function () {
$("#input").focus();
}, 500);
That was just the basic data in which I send two variables to the server for the search. Below is an example of a json response.var group = $("#GroupCode");
group.kendoAutoComplete({
minLength:3,
dataTextField: "Code",
dataSource: {
type: "json",
transport: {
read: {
url: '@Url.Action("GroupCodeListBySG", "Equipment")',
type: "GET",
dataType: "json",
data: {
search: function() {
return group.val();
},
saleGroup: function() {
return $("#DivDrop option:selected").val();
}
}
}
}
}
});
[{"ExtensionData":{},"Code":"VEHICLES","DMFPercent":0,"Default_Excise_Tax":false,"Description":"VEHICLE ASSETS","Division":null,"IsActive":false,"IsAttachment":false,"JDUX_CatID":null,"JDUX_KeyCode":null,"RDOP_Agreement_MW":null,"RDOP_Agreement_NW":null,"RDOP_Agreement_SC":null,"RDOP_Agreement_SW":null,"RDOP_Facts_MW":null,"RDOP_Facts_NW":null,"RDOP_Facts_SC":null,"RDOP_Facts_SW":null,"Sales_Group":null,"Updated":"\/Date(-62135575200000)\/","Updated_By":null}]
<body>
<div id="example" class="k-content">
<div id="windowFacets" style="width:100%"></div>
<!-- // -->
<div id="grid"></div>
<div id="test"></div>
<script type="text/x-kendo-template" id="template">
<div class="toolbar">
<label class="category-label" for="category">joindate:</label>
<input id="start">
<input id="end">
<button class="k-button" onclick="refreshGrid()" id="refresh">search</button>
<button class="k-button" id="excel" onclick="excelGrid()" >excel</button>
</div>
</script>
<script>
function refreshGrid() {
$("#grid").data("kendoGrid").dataSource.read();
}
function excelGrid(){
var form = document.excel;
form.command.value = "admin03_excel";
form.start.value = $("#start").val();
form.end.value = $("#end").val();
form.action = "<%=RequestUtils.getPageLink(request,"/")%>ActAdmin.do";
form.submit();
}
$(document).ready(function() {
$("#grid").kendoGrid({
dataSource: {
transport: {
read: {
url: "/ActAdmin.do?command=admin03_json",
dataType: "json",
data: { //additional parameters sent to the remote service
start: function() {
return $("#start").val();
},
end: function() {
return $("#end").val();
}
}
}
},
schema: {
data: "rows",
total: "total",
model: {
fields: {
reg_date :{ type: "string" },
usr_id :{ type: "string" },
biz_name :{ type: "string" },
biz_num :{ type: "string" },
usr_name :{ type: "string" },
reg_date :{ type: "string" },
usr_hp :{ type: "string" }
}
}
},
pageSize: 15,
serverPaging: true,
serverSorting: true,
serverFiltering: true
},
height: 720,
filterable: true,
sortable: true,
pageable: true,
selectable: true,
toolbar: kendo.template($("#template").html()),
change: function(data){
var text = "";
var grid = this;
grid.select().each(function() {
var dataItem = grid.dataItem($(this));
text = dataItem.usr_id;
var window = $("#windowFacets");
window.kendoWindow({
actions: ["Close"],
width: "780px",
height: "620px",
content:{
url: "/ActAdmin.do?command=admin03_popup",
data:{usr_id: function() {return text;}}
},
modal: true,
title: "DetailView"
});
alert('3');
window.data("kendoWindow").open();
});
},
columns: [{
field:"reg_date",
title: "date",
filterable: false,
sortable: false
},
{
field: "usr_id",
title: "id"
},
{
field: "biz_name",
title: "iz",
sortable: false,
filtertable: false
},
{
field: "biz_num",
title: "num",
sortable: false
},
{
field: "usr_name",
title: "user",
filterable: false,
sortable: false
},
{
field: "usr_hp",
title: "phone",
filterable: false,
sortable: false
},
{
field: "reg_date",
title: "reg_date",
template: '#= kendo.toString(reg_date,"yyyy-MM-dd") #'
}
]
});
function startChange() {
var startDate = start.value();
if (startDate) {
startDate = new Date(startDate);
startDate.setDate(startDate.getDate() + 1);
end.min(startDate);
}
}
function endChange() {
var endDate = end.value();
if (endDate) {
endDate = new Date(endDate);
endDate.setDate(endDate.getDate() - 1);
start.max(endDate);
}
}
var start = $("#start").kendoDatePicker({
value: "<%=(st_year+"-"+st_month+"-"+st_day)%>",
change: startChange,
format: "yyyy-MM-dd"
}).data("kendoDatePicker");
var end = $("#end").kendoDatePicker({
value: new Date(),
change: endChange,
format: "yyyy-MM-dd"
}).data("kendoDatePicker");
start.max(end.value());
end.min(start.value());
});
</script>
</div>