js for form
JS for Form
2023-09-11 14:20:28 时间
//表单填充 表单填充
, formDataLoad: function (domId, obj) {
for (var property in obj) {
if (obj.hasOwnProperty(property) == true) {
if ($("#" + domId + " [name='" + property + "']").size() > 0) {
$("#" + domId + " [name='" + property + "']").each(function () {
var dom = this;
if ($(dom).attr("type") == "radio") {
$(dom).filter("[value='" + obj[property] + "']").attr("checked", true);
}
if ($(dom).attr("type") == "checkbox") {
obj[property] == true ? $(dom).attr("checked", "checked") : $(dom).attr("checked", "checked").removeAttr("checked");
}
if ($(dom).attr("type") == "text" || $(dom).prop("tagName") == "SELECT" || $(dom).attr("type") == "hidden" || $(dom).attr("type") == "textarea") {
$(dom).val(obj[property]);
}
if ($(dom).prop("tagName") == "TEXTAREA") {
$(dom).val(obj[property]);
}
});
}
}
}
}
// 绑定单个下拉框方法
, bindSelectSingle: function (domId, data, defaultVal) {
/// <summary>
/// 绑定下拉框方法
/// </summary>
/// <param name="domId" type="type">dom的ID</param>
/// <param name="data" type="type">json数据</param>
var selectDom$ = $("#" + domId);
selectDom$.find("option").remove();
$(data).each(function () {
selectDom$.append("<option value='" + this.Key + "'>" + this.Value + "</option>");
});
if (defaultVal != undefined) {
selectDom$.val(defaultVal);
}
}
//取url参数
getUrlVars: function () {
var vars = {};
var parts = window.location.href.replace(/[?&]+([^=&]+)=([^&]*)/gi,
function (m, key, value) {
vars[key] = value;
}
);
return vars;
}
, getValueBydataPropAndKey: function (dataProp, key) {
/// <summary>
/// 通过数据源属性和下拉框Key得到Value
/// </summary>
/// <param name="dataProp" type="string">数据源属性</param>
/// <param name="key" type="string">下拉框Key</param>
var json = window.cacheSelectData
, arr = JSON.parse(json[dataProp])
, value = "";
$(arr).each(function () {
if (this.Key == key) {
value = this.Value;
return;
}
});
return value;
}
//脏值处理
, dirtyValueHandle: function (val) {
if (val == null || val == undefined) {
return "";
} else {
return val;
}
}
//url参数转对象,如?name=1&age=20转换后为{name:1,age:20}
, parseQuery: function (query) {
var reg = /([^=&\s]+)[=\s]*([^&\s]*)/g;
var obj = {};
while (reg.exec(query)) {
obj[RegExp.$1] = RegExp.$2;
}
return obj;
}
相关文章
- JS 逆向 --- 过无限debugge、hook、js混淆还原、控制流混淆
- js 数组赋值问题 :值传递还是引用?
- Why not always use the index as the key in a vue.js for loop?
- 玩转代码|JS屏蔽网页右键菜单及禁止复制粘贴功能
- vue - check-versions.js for chalk
- vue - webpack.dev.conf.js for HtmlWebpackPlugin
- vue - webpack.dev.conf.js for CopyWebpackPlugin
- C# MVC 用户登录状态判断 【C#】list 去重(转载) js 日期格式转换(转载) C#日期转换(转载) Nullable<System.DateTime>日期格式转换 (转载) Asp.Net MVC中Action跳转(转载)
- 工作总结 js for 循环遍历 json 数据
- js,jq滚动监听,切换等常用JS代码
- js实现页面与页面之间传值的三种方法
- 【JS】JavaScript的循环命令示例(for/for each/do while)
- Vue - 在纯 JS 文件中调用自定义组件 / 类似 ElementUI 弹框组件 Message、Modal(在纯 js 文件中通过 import 方式引入并调用弹框模态框组件显示出来,)
- js 实现call和apply方法,超详细思路分析
- 如何理解JS项目
- 微信小程序中的app.js-清除缓存
- 工作中常用到的JS验证
- String js删除字符串的最后一个字符三种方法
- 当js中的for循环遇到延时器或者定时器时需要注意的问题(这里有个大坑)
- js 保留两位小数,Js四舍五入,JavaScript Math四舍五入
- JS中的反引号怎么打
- js字符串日期yyyy-MM-dd转化为date示例代码
- Vue.JS 对比其他框架
- arcgis api 4.x for js 自定义 Draw 绘制手绘面以及手绘线,只针对二维视图(附源码下载)
- arcgis api 4.x for js之基础地图篇
- arcgis api 3.x for js 入门开发系列六地图分屏对比(附源码下载)
- arcgis api 3.x for js 入门开发系列三地图工具栏(附源码下载)
- [已解决]报错: warning: LF will be replaced by CRLF in lib/anime.min.js
- Spring3中js/css/jpg/gif等静态资源无法找到(No mapping found for HTTP request with URI)问题解决--转载