//获取某行某列的值
onSelectionChanged: function (selectedItems) {
var data = selectedItems.selectedRowsData[0];
if (data != null)
postionno = data.POSTIONNO; //货位号

},

//获取月份的下拉列表dxSelectBox

<div data-bind="dxSelectBox: SCYselectbox" class="dx-lookup-invalid" style="width:50%"></div>

SCYselectbox: {
items: ko.observable([]),
value: ko.observable(""),
onValueChanged: function (data) {
getlist(data.value);
}
}

//绑定月份
function getlist2() {

var myDate = new Date()
var s_yeay = myDate.getFullYear();
var yearitem = [
s_yeay + "-01",
s_yeay + "-02",
s_yeay + "-03",
s_yeay + "-04",
s_yeay + "-05",
s_yeay + "-06",
s_yeay + "-07",
s_yeay + "-08",
s_yeay + "-09",
s_yeay + "-10",
s_yeay + "-11",
s_yeay + "-12"
];
viewStockCount.SCYselectbox.items(yearitem); //将值填充到selectbox控件中
viewStockCount.SCYselectbox.value(yearitem[0]); //默认选择第一个
getlist(viewStockCount.SCYselectbox.value()); //取值
};

//给grid中的列绑定下拉列表
var depData = ko.observable([]); //获取仓库下拉列表
{
dataField: 'GENSTORAGEID',
caption: '仓库名称',
allowSearch: true,
dataType: 'string',
visible: false,
allowEditing: true,
alignment: 'center',
editCellTemplate: function ($cell, cellData) {
var $selectBox = $("<div>").dxLookup({
dataSource: depData(),
displayExpr: 'GENSTORAGENAME',
valueExpr: 'GENSTORAGEID',
searchPlaceholder: '请输入...',
cancelButtonText: '取消',
value: cellData.data.GENSTORAGEID,
onValueChanged: function (e) {
//console.log(e.value);
GENSTORAGEID(e.value);
}
});
$cell.append($selectBox);
}

}

//----------获取仓库列表
function getgenername() {
var _peoid = decrypt(localStorage.getItem("_ur"));
DBRequest("Api/Func.asmx/Getgenernamelist", "{ peoid:" + _peoid + "}",passfunc3, failfunc);
};

//查询成功后异步事件 ------入库复核
function passfunc3(data) {
depData(data);
console.log(depData());
};

//给grid列的单价、金额加美元符号
{
dataField: 'AMONEY',
caption: '金额',
allowSearch: true,
allowEditing: false,
dataType: 'string',
alignment: 'center',
format: { type: 'currency', precision: 2 } //给grid列的单价、金额加美元符号
},

//
{
dataField: 'ISVALID',
dataType: 'number',
caption: '是否有效',
alignment: 'center',
width: 'auto',
lookup: {
dataSource: [
{ value: 1, content: '是' },
{ value: 0, content: '否' }
], valueExpr: 'value', displayExpr: 'content'
}
}

//类型
dataType alignment
'number' 'right'
'boolean' 'center'
'string' 'left'
'date' 'left'
'guid' 'left'

//初始化grid宽度
customizeColumns: function (columns) {
columns[0].width = 100;
columns[1].width = 210;
}

//grid验证
{
dataField: "Phone",
validationRules: [{ type: "required" }, {
type: "pattern",
message: 'Your phone must have "(555) 555-5555" format!',
pattern: /^\(\d{3}\)\ \d{3}-\d{4}$/i
}]
},

{
dataField: "Email",
validationRules: [{ type: "required" }, { type: "email" }]
}

//自定义列 拼接成列(由几个字段组成)
{
caption: "Employee",
width: 230,
fixed: true,
calculateCellValue: function(data) {
return [data.Title,
data.FirstName, data.LastName]
.join(" ");
}
},

//grid绑定列图片
{
dataField: "Picture",
width: 100,
allowFiltering: false,
allowSorting: false,
cellTemplate: function (container, options) {
container.addClass("img-container");
$("<img />")
.attr("src", options.value)
.appendTo(container);
}
},

//grid刷新
$("#applyCustomFilter").dxButton({
text: "Calculate summary for selected rows",
onClick: function() {
dataGrid.refresh();
}
});

//grid滚动条属性(水平和垂直的都有)
fieldChooser: {
enabled: false
},
scrolling: {
mode: "virtual"
},

//只允许输入数字的texbox
<div class="dx-field">
<div class="dx-field-label">Default mode</div>
<div class="dx-field-value">
<div data-bind="dxNumberBox"></div> //这个就是的(没有上下的箭头)只能输入数字的
</div>
</div>

<div class="dx-field">
<div class="dx-field-label">With spin and clear buttons</div>
<div class="dx-field-value">
<div data-bind="dxNumberBox: withButtons"></div> //有上下箭头的,且输入的文本还可以关闭的 withButtons是自定义的名字,用来写js的
</div>
</div>

//js
withButtons: {
value: 20.5,
min:0,
max:3,
showSpinButtons: true,
showClearButton: true,
},

//----------------------动态设置最大值,最小值----------------------

<div class="dx-field-label">This month sales</div>
<div class="dx-field-value">
<div data-bind="dxNumberBox: salesOptions"></div>
</div>

var totalproductQuantity = 30,
salesValue = ko.observable(16),
stockValue = ko.observable(14);

salesOptions: {
max: totalproductQuantity,
min: 0,
value: salesValue,
showSpinButtons: true,
onValueChanged: function() {
stockValue(totalproductQuantity - salesValue());
}
},

//----------------------文本框的属性----------------------
readOnly: true, //只读
hoverStateEnabled: false //鼠标移上去的状态(false 无)
mode: "password", //密码类型
showClearButton: true //文本是否可有清除按钮
placeholder: "请输入文字" //文本提示
valueChangeEvent: "keyup",
disabled: true //整个文本框不可用,且无鼠标移上去的样式

//----------------------下拉文本框----------------------
<div class="dx-field-value">
<div data-bind="dxSelectBox: simple"></div>
</div>

属性:
displayExpr: "Name",
valueExpr: "ID",
value: products[3].ID, //products 为datatsouse的名字
openOnFieldClick: true, //点击文本框出现下拉列表
showDropButton: false, //是否显示下拉列表的那个三角形的箭头(false 不出现)

//此下拉列表可搜索,但下拉列表中没有的值,不会被查出,文本框也不会保留该不存在的值
searchOptions: {
items: products,
displayExpr: "Name",
valueExpr: "ID",
searchEnabled: true
},
//同上相反
fieldEditingOptions: {
items: simpleProducts,
value: currentProduct,
acceptCustomValue: true,
}

js+html5 +devexpress属性总结的更多相关文章

  1. HTML5新增属性data-*和js/jquery之间的交互

    HTML5新增属性data- data-自定义属性,这种方式的自定义属性解决属性混乱无状态管理的现状 书写实例 <div data-role="page" data-last ...

  2. HTML5 学习总结(二)——HTML5新增属性与表单元素

    一.HTML5新增属性 1.1.contextmenu contextmenu的作用是指定右键菜单. <!DOCTYPE html> <html> <head> & ...

  3. HTML5 学习笔记(二)——HTML5新增属性与表单元素

    目录 一.HTML5新增属性 1.1.contextmenu 1.2.contentEditable 1.3.hidden 1.4.draggable 1.5.data-* 1.6.placehold ...

  4. js&html5实现消星星游戏

    前段时间看见园子里有同学用js+jquery实现了消星星游戏,自己也早有这个想法,于是就利用业余时间用js+html5实现了一下消星星游戏. 主要是想实现效果,运用了css3中的动画属性.游戏积分算法 ...

  5. HTML5学习总结——HTML5新增属性与表单元素

    一HTML5新增属性 1.1contcxtmcnu contextmenu的作用是指定右键菜单. <!DOCTYPE html> <html> <head> < ...

  6. HTML5新增属性

    [sourcecode language="plain"] <!DOCTYPE html> <html manifest="cache.manifest ...

  7. HTML5新属性在Google浏览器中不能显示的问题

    这两天在学习HTML5新属性时遇到了如下问题,很是不解: 例如在学习使用canvas时,需要绘制一个红色的原点,代码如下: <!DOCTYPE HTML> <html> < ...

  8. 简单理解js的prototype属性

    在进入正文之前,我得先说说我认识js的prototype这个东西的曲折过程. 百度js的prototype的文章,先看看,W3School关于prototype的介绍: 你觉得这概念适合定义js的pr ...

  9. video.js html5 视频播放器

    我个人感觉很不错 https://github.com/videojs/video.js <head> <title>Video.js | HTML5 Video Player ...

随机推荐

  1. php判断请求类型 ajax、get还是post类型

    1.通过PHP获取预定义变量中的XMLHttpRequest判读. 首先你必须使用jquery或Js发送ajax请求,通过jquery发送的$.ajax, $.get or $.post方法请求网页内 ...

  2. CE 内存申请

    char ch_ReadByte='H'; char *ptr_OneLineData; unsigned ); if ((ptr_OneLineData = (char *)malloc(bufsi ...

  3. to_date & to_char

    在oracle数据库中,有这么两个数据格式转换函数, to_date & to_char 这两个函数都可以将日期格式更改,但是一般都用前者,百度搜索中有个例子: select * from T ...

  4. 使用cordova插件barcodescanner遇到的坑

    最近接手了一个app任务,由于不懂android和ios,只想简单点写代码,所以,最终采用了基于H5的web框架:ionic + cordova(也叫phonegap)来开发.app的设计中有一个扫描 ...

  5. sae flask 微信公众平台开发

    index.wsgi启动服务文件 import sae from evilxr import app application = sae.create_wsgi_app(app) evilxr.py ...

  6. 【我是老中医】codeblocks无法编译的问题解决方法

    前几天把codeblocks的文件夹移动到移动硬盘里面,结果发现从此以后代码不能编译了,当时没有注意,就改用vs写代码,发现真的不是很习惯,正好学妹也碰到这种问题问我怎么解决,然后就百度了一下. 我的 ...

  7. Kindle DXG和Win10 64bits无法连接的问题

    直入主题:换根数据线. 不要觉得答案简单,我就是不负责任的在调侃. 在得出这条答案之前,我的思路是,既然插上线以后,kindle的充电指示灯会亮,那就应该不是线的问题. 所以实际的过程是我安装了驱动之 ...

  8. AJAX 的简单用法:

    AJAX 是一种在无需重新加载整个网页的情况下,能够更新部分网页的技术. AJAX 是一种用于创建快速动态网页的技术.通过在后台与服务器进行少量数据交换,AJAX 可以使网页实现异步更新.这意味着可以 ...

  9. 【阿迪达斯 ZX850 系列】

    [阿迪达斯zx850系列 灰蓝桔 36-44] [阿迪达斯 ZX850 新配色B34720 情侣鞋 36-44] [阿迪达斯 ZX850 新配色B34720 情侣鞋 36-44] [阿迪达斯 ZX85 ...

  10. unity panel删除drawcall失败导致的残留影像

    ngui panel 被隐藏或者删除的时候调用ondisable,清空drawcall,如果这个操作是在ontriggerenter等物理操作中就会删除不掉导致留下残影 解决方式 : 讲这些操转移到协 ...