JavaScript中的click()方法在JSF中的应用

在JSF中一个按钮可以同时实现onclick和action两个事件,但是在动态生成的表单中一个按钮就只有了onclick属性,这个时候如果要提交数据怎么办呢?可以用javascript的click()方法。

方法很简单用一个按钮去激活另一个按钮:

 

这个是动态生成的按钮

out.print("<input type=\"button\" class=\"button01\" value=\"删除\" onclick=\"deleteLine('"+array[1]+"','"+itemId+"','"+i+"');\">");

 

function deleteLine(array,itemId,num){
        	str = array+":"+itemId+":"+num;
        	document.all("form1:deletebutton").click();
            }

 

看到了,这里调用了deletebutton的click()方法,这样就激活了deletebutton的onclick事件,

<h:inputHidden id ="doDelete" value="#{eva_showSelfJobDetailBB.doDelete}"/>
<h:commandButton id="deletebutton" value="删除" style="display:none;" onclick="return deleteData();" action="#{eva_showSelfJobDetailBB.delete}">

 

function deleteData(){
        	document.all("form1:doDelete").value=str;
        	return true;
            }

 

这里的str是个全局变量,这样以前台的数据就可以与后台进行交互了。

你可能感兴趣的:(JavaScript,JSF)