`
- 浏览:
4145 次
- 来自:
...
-
- /**
- * 全选的所有指定名称的checkbox
- *@state 全选的checkbox的状态
- *@name 表格中的所有checkbox的名称
- *@author fangtf
- *@type void
- */
- function selectAll(state,name) {
- var ids = document.getElementsByName(name);
- for (var i = 0; i < ids.length; i++)
- {
- ids[i].checked = state;
- }
- }
-
- /**
- * 全选的所有指定id名称的同名checkbox
- *@state 全选的checkbox的状态
- *@name 表格中的所有checkbox的名称
- *@name 表格中的所有checkbox的id
- *@author fangtf
- *@type void
- */
- function selectAllCheckboxByID(state,name,id) {
- var ids = document.getElementsByName(name);
- for (var i = 0; i < ids.length; i++)
- {
- if(ids[i].id == id)
- {
- ids[i].checked = state;
- }
-
- }
- }
-
- /**
- * 全选页面上所有的checkbox
- *@state 全选的checkbox的状态
- *@author fangtf
- *@type void
- */
- function selectAlls(state)
- {
- var inputs = document.getElementsByTagName("input");
- for(var i =0;i<inputs.length;i++)
- {
- if(inputs[i].type == "checkbox")
- {
- inputs[i].checked =state;
- }
- }
-
- }
-
- /**
- *得到鼠标所单击的行
- *@type Object
- */
- function GetRow(oElem) {
- while (oElem) {
- if (oElem.tagName.toLowerCase() == "tr" && oElem.parentElement.tagName.toLowerCase() == "tbody") {
- return oElem;
- }
- if (oElem.tagName.toLowerCase() == "table" || oElem.tagName.toLowerCase() == "th") {
- return false;
- }
- oElemoElem = oElem.parentElement;
- }
- }
-
- /**
- * 全选当前行的checkbox
- *@state 全选的checkbox的状态
- *@author fangtf
- *@type void
- */
- function selectRowCheckbox(state)
- {
- var row = GetRow(window.event.srcElement);
- var cells = row.childNodes;
- for(var i=0;i<cells.length;i++)
- {
- var cell = cells[i].childNodes[0];
- if(cell.tagName == "INPUT")
- {
- cell.checked = state;
- }
- }
- }
-
- /**
- *选中指定值的Radio
- *如:有两个radio,
- *第一个的name="ids",value="1"
- *第二个的name="ids",value="2"
- *调用方法selectRadio("ids","1");
- *那么数值为1的Radio将被选中
- *@name radio的名称
- *@value radio的值
- *@author fangtf
- *@type void
- */
- function selectRadio(name,value) {
- var radioObject = document.getElementsByName(name);
- if(value === "")
- {
- radioObject[0].checked = true;
- return;
- }
- for (var i = 0; i < radioObject.length; i++)
- {
- if(radioObject[i].value == value)
- {
- radioObject[i].checked = true;
- break;
- }
-
- }
- }
-
- /**
- *选中指定值的checkbox
- *如:有两个checkbox,
- *第一个的name="ids",value="1"
- *第二个的name="ids",value="2"
- *第三个的name="ids",value="3"
- *调用这个方法selectCheckbox("ids","1,2")那么数值为1,2的checkbox将被选中
- *
- *@name 要选中的checkbox数组的名称
- *@value 判断时候选中的值
- *@author fangtf
- *@type void
- */
- function selectCheckbox(name,value) {
- var checkObject = document.getElementsByName(name);
- var valuevalues = value.split(",");
- for(var j = 0; j < values.length; j++)
- {
- for (var i = 0; i < checkObject.length; i++)
- {
- if(checkObject[i].value == values[j])
- {
- checkObject[i].checked = true;
- break;
- }
- }
- }
-
- }
-
- /**
- *选中指定值的select
- *如:有一个名称为user的select
- *<option value="0"></option>
- *<option value="1"></option>
- *调用这个方法selectOption("user","0")那么选项为0的选项就被选中
- *
- *@name String select的名称
- *@value String 判断时候选中的值
- *@author fangtf
- *@type void
- */
- function selectOption(name,value)
- {
- document.getElementsByName(name)[0].value=value;
-
- }
分享到:
Global site tag (gtag.js) - Google Analytics
相关推荐
这里提供了一个简单的深拷贝函数示例: ```javascript function objectClone(obj, preventName) { // 检查输入类型是否为对象,如果不是则直接返回 if ((typeof obj) !== 'object') { return obj; } // 对象...
Lodash是一个流行的JavaScript实用工具库,它提供了一个`_.cloneDeep`函数,可以方便地进行深拷贝。如果你的项目已经引入了Lodash,那么可以轻松使用这个功能: ```javascript var _ = require('lodash'); var ...
"最专业的深拷贝JS库"是一个专门用于实现JavaScript对象深拷贝的工具库。这个库采用了递归的方式来处理深拷贝,递归是一种自上而下解决问题的方法,当遇到复杂的数据结构,如嵌套的对象或数组时,递归可以有效地一...
- **js深拷贝函数**:探讨不同方法实现深拷贝的过程,包括递归拷贝等。 - **浅谈JavaScript中面向对象的深拷贝和浅拷贝**:更深入地理解深拷贝和浅拷贝的概念,以及它们在面向对象编程中的应用。 通过上述介绍和...
`mottoClone` 函数是一个实现深拷贝的示例,它支持多种基础数据类型(Boolean, Number, String, RegExp, Date)以及Array, Function, 和JSON对象。让我们详细分析一下这个函数的工作原理: 1. 首先,函数检查输入的...
自己实现string函数功能 本文主要介绍了自己实现string函数的功能,其中...本文详细介绍了mystring类的实现过程,包括构造函数、拷贝构造函数、赋值运算符、加法运算符和析构函数的实现,以及在Main函数中的使用示例。
Ez.js是一个实用、小巧且简洁的JavaScript函数库,旨在提升开发者的工作效率,增强程序的容错性。这个库针对常见的开发场景提供了一系列的便捷功能,帮助开发者快速处理各种业务需求,从而节省大量的开发时间。由于...
JavaScript中的拷贝概念在编程中至关重要,特别是在处理对象和数组时。浅拷贝和深拷贝是两种不同的拷贝方式,它们的区别在于如何处理数据的复制。 1. **浅拷贝**: 浅拷贝是指创建一个新的对象,然后将原对象的...
以下是一个简单的递归深拷贝函数示例: ```javascript function deepClone(obj) { if (obj === null || typeof obj !== 'object') { return obj; } let clone; if (Array.isArray(obj)) { clone = []; for ...
在实际应用中,JavaScript的深拷贝还有其他实现方式,如使用 `JSON.parse` 和 `JSON.stringify`,但这种方法有局限性,因为它无法处理函数和循环引用。此外,还可以使用第三方库如 Lodash 的 `_.cloneDeep` 方法。...
在JavaScript中,深拷贝和浅拷贝是两种常见的数据复制方法。深拷贝是指创建一个新对象,复制原对象的所有属性,并且如果属性是对象,那么也会递归地复制其内部的对象。这种方式确保了原始对象和复制对象之间的独立性...
在JavaScript中,浅拷贝和深拷贝是处理引用类型数据时的重要概念。这两种拷贝方式主要区别在于复制对象的方式以及是否保留原始对象与新对象之间的关联性。 浅拷贝,顾名思义,仅仅复制对象的引用,而不是创建一个...
总之,JavaScript中实现数组深拷贝的方法包括自定义深拷贝函数、JSON转换以及使用第三方库。选择哪种方法取决于具体需求和性能考虑。在处理复杂数据结构时,务必注意深拷贝和浅拷贝的区别,以避免不必要的副作用。
在JavaScript编程中,对数组进行拷贝是一项常见的需求,但我们必须区分两种拷贝方式:浅拷贝和深拷贝。浅拷贝仅仅复制引用,而深拷贝则是复制内容。如果对拷贝后的数组内容进行修改,如果使用浅拷贝方法,改动会影响...
在JavaScript中,有多种方法可以实现深拷贝,包括使用JSON.parse与JSON.stringify的组合、递归函数以及一些现成的库,如lodash的_.cloneDeep方法。不过,由于我们没有具体的代码,无法详细介绍这里的实现方式,但...
在JavaScript中,深拷贝(Deep Clone)是一...在压缩包文件"main.js"中,可能包含了具体的深拷贝实现示例,而"README.txt"可能是对这个实现的说明或使用指南。通过阅读这两个文件,可以更深入地理解并应用深拷贝技术。
以下是jQuery深拷贝Json对象的简单示例: ```javascript var oldJson = { Name: 'quber', List: [1, 2, 3, 4], Obj: [ { name: 'qubernet', fun: function () { return 1; } }, { name: 'qubernet1', fun: ...
### JavaScript 数组函数详解 #### 1. `shift` 方法 `shift` 方法用于移除数组的第一个元素,并返回被移除的元素。如果数组为空,则返回 `undefined`。 ```javascript let a = [1, 2, 3, 4, 5]; let b = a.shift();...
在`README.txt`中,可能会详细解释如何使用`main.js`中的函数,以及在什么情况下使用哪种深拷贝策略,可能还会包含一些示例代码和注意事项,例如处理循环引用和特殊类型的对象(如日期、正则等)。了解和掌握深拷贝...