1.在Jsf 运用js 获取 某表单中的元件
因为 在form表单中的元件的Id 会解析为formId:元件Id
如 :
<h:form id="form1">
<h:inputText id="id1" value=" "/>
<h:outputText id="id2" value=" "/>
</h:form >
那么 js要获到 id1的值就得 用 document.getElementById("form1:id1").value;或
document.form1["form1:id1"].value;
======================================================================
2. inputText 与outputText的获值区别:
这是我自己发现的,不知对不对 :
如果是要获得inputText的值的话 得 用value 如上面所示;
如果是要获得outputText的值的话 得用.innnerText 如:
document.getElementById("form1:id2").innerText;
======================================================================
3.要把获取的值进行四则运算得先把其转化为Number型
var a=document.form1["form1:id1"].value;
var aNum= Number(a.toString());
如果a中包括一些非数字型得转换 如 把“123,456,789” 得转为123456789
var aNum=Number(a.toString().replace(/,/g,'')); 其中/.../g 表示多次替換
======================================================================
4.如果js子頁面想調用父页面某form 表单下的元件:
这种情况分2种 :
1. 如果是子页面直接套在父页面里 的话 就用window.parent;
2. 如查是子页面是从父页面点击后新弹出来的页面的话 就用window.openner;
因为 在form表单中的元件的Id 会解析为formId:元件Id
如 :
<h:form id="form1">
<h:inputText id="id1" value=" "/>
<h:outputText id="id2" value=" "/>
</h:form >
那么 js要获到 id1的值就得 用 document.getElementById("form1:id1").value;或
document.form1["form1:id1"].value;
======================================================================
2. inputText 与outputText的获值区别:
这是我自己发现的,不知对不对 :
如果是要获得inputText的值的话 得 用value 如上面所示;
如果是要获得outputText的值的话 得用.innnerText 如:
document.getElementById("form1:id2").innerText;
======================================================================
3.要把获取的值进行四则运算得先把其转化为Number型
var a=document.form1["form1:id1"].value;
var aNum= Number(a.toString());
如果a中包括一些非数字型得转换 如 把“123,456,789” 得转为123456789
var aNum=Number(a.toString().replace(/,/g,'')); 其中/.../g 表示多次替換
======================================================================
4.如果js子頁面想調用父页面某form 表单下的元件:
这种情况分2种 :
1. 如果是子页面直接套在父页面里 的话 就用window.parent;
2. 如查是子页面是从父页面点击后新弹出来的页面的话 就用window.openner;