1、如一个frame下有一页面:
<frame src="body.jsp?model=<%=model%>" name="mainframe" id="mainframe"/>
body.jsp下有
<select name="selwf" size="8" multiple style="display:none ">
</select>
对象。
window.parent.mainframe.document.conditionform.selwf即可对body下的对象进行操作。
也就是获取当前窗口父对象的frame的名称,后面的同在一个页面里如何获取表单对象的方法相同。
2、下面说说如何获取某一个form下的所有控件,如获取conditionform下所有控件,则
var obj = window.parent.mainframe.document.conditionform;此时obj就是一个数组对象了,通过循环操作可获取form下的所有控件。通过obj.elements[i]可以对每个控件的进行操作。
3、获取同一名称的各个控件。
如表单下有多个同一名称的"input"对象。
var obj = document.getElementsByTagName_r("input");obj[i],依次获取相应的对象。
4、子窗口向父窗口传值:
<textarea name="examobject" cols="60" rows="10" >
</textarea>
<a style="cursor:hand" οnclick='window.open("../../tree/jg3.jsp","名字","width=400,height=400")'>
window.top.opener.document.form.examobject.value = "";
window.top.opener表示的是从那个页面被打开。
5、innerHTML:对象.innerHTML获取对象内的所有html标签。
6、getElementById:获取指定id的对象,与getElementsByTagName的区别是后者获取同一名字的对象数组。
7、event.srcElement:当前触发事件的对象,在什么对象上触发就是什么对象。
8、 select中值的填充和获取:如<select name="seluser" size="8" multiple style="display:none"></select>
document.tableform.seluser.add(new option(select value值,select显示值));
option对象:初始化select中value值和显示的值。也是最为重要的。通过上面的方法就可将值填充进去,可循环添加多条记录。下面通过js来获取填充进去的值。首先是获取select中值的个数,也就是填充进去的多条记录,如var supperdepID = document.tableform.seluser。
var depNum = supperdepID.length;下面是一一获取各个填充进去的值,方法为:
String[] selectValue;
for(i=1;i < depNum.length;i++){
selectValue[i]= depNum.options[i].value;
}在这里将取出来的值付给一个数组。