1、子页面获取父页面元素的值
var budgetSection = opener.$("input[name='xxx']").val();
opener 属性是一个可读可写的属性,可返回对创建该窗口的 Window 对象的引用。
2、子页面向父页面元素赋值
opener.$("input[name='xxx']").value=传递值的变量;
3、Ajax的async:
默认是true,即为异步方式,$.Ajax执行后,会继续执行ajax后面的脚本,直到服务器端返回数据后,触发$.Ajax里的success方法,这时候执行的是两个线程。若要将其设置为false,则所有的请求均为同步请求,在没有返回值之前,同步请求将锁住浏览器,用户其它操作必须等待请求完成才可以执行。
在子窗口中会有window.close()语句,异步方式下子窗口关闭之前,可能ajax的success方法还没有执行,导致子窗口要给父窗口的元素赋值的操作无法完成,因此这种情况下要将ajax设置为同步,即async设置为false。
4、获取到页面中id为xxx的元素
document.getElementById("xxx")
5、给id为xxx的元素设置只读属性
document.getElementById("xxx").readOnly = true;
6、获取id为xxx的元素的值
document.getElementById("xxx").value
7、在javascript中把var转换成int型,使用函数parseInt或者Number
parseInt(document.getElementById("whir$t3082_f3800").value)
Number(document.getElementById("whir$t3082_f3800").value)
Number( ):
(1)如果是Boolean值,true和false将分别转换为1和0。
(2)如果是数字值,只是简单的传入和返回。
(3)如果是null值,返回0。
(4)如果是undefined,返回NaN。
(5)如果是字符串,遵循下列规则:
如果字符串截去开头和结尾的空白字符后,不是纯数字字符串,那么最终返回结果为NaN。
如果是字符串中只包含数字(包括前面带正号或负号的情况),则将其转换为十进制数值,即“1”变成1,“123”会变成123,而“011”会变成11(前导的零被忽略了);
如果字符串中包含有效的浮点格式,如“1.1”,则将其转换为对应的浮点数值(同样也会忽略前导零);
如果字符串中包含有效的十六进制格式,例如”0xf”,则将其他转换为相同大小的十进制整数值;
如果字符串是空的(不包含任何字符),则将其转换为0;
如果字符串中包含除上述格式之外的字符,则将其他转换成NaN.
(6)如果是对象,则调用对象的valueOf()方法,然后依照前面的规则转换返回的值。如果转换的结果是NaN,则调用的对象的toString()方法,然后再次依照前面的规则转换返回的字符串值。
parseInt():
可以将字符串转换成一个整数,与Number()函数相比,parseInt()函数不仅可以解析纯数字字符串,也可以解析以数字开头的部分数字字符串(非数字部分字符串在转换过程中会被去除)。
(1)如果第一个字符不是数字字符或者负号,parseInt()就会返回NaN; 也就是说,用parseInt()转换空字符串会返回NaN。
(2)如果第一个字符是数字字符,parseInt()会继续解析第二个字符,直到解析完所有后续字符或者遇到了一个非数字字符。
(3)如果字符串以”0x”开头且后跟数字字符,就会将其当作一个十六进制整数。
(4)如果字符串以”0”开头且后跟数字字符,就会将其当作一个八进制整数。
(5)parseInt()函数增加了第二参数用于指定转换时使用的基数(即多少进制)。
(6)当parseInt()函数所解析的是浮点数字符串时,取整操作所使用的方法为“向下取整”。
8、给id为xxx的元素添加onchange事件
document.getElementById("xxx").onchange=function(){
alert('1111');
};
onchange :事件会在域的内容改变时触发,在元素的值改变了且失去焦点时触发(两次的值一样不会触发)。