首先,我根本不是javascript专家,实际上我是javascript的新手。我使用的功能是复制粘贴和编辑,所以我不喜欢这个。对于一些人,我怎么也想不出如何从该表单中解析输入文本。 Javascript代码:
function addInput(type) {
// Create an input type dynamically.
var element = document.createElement("input");
// Assign different attributes to the element.
element.setAttribute("type", "text");
//element.setAttribute("value", type);
element.setAttribute("name", "text");
var foo = document.getElementById("fooBar");
// Append the element in page (in span).
foo.appendChild(element);
};
xhtml中的方法调用是:
<h:form>
<h:messages infoClass="success" errorClass="error"
warnStyle="warning" />
<div class="info">
<span class="required">*</span>
<h:outputText value=" = #{msg['required']}" />
</div>
<div class="widget box" style="width: 40%; float: left">
<div class="widget-header">
<i class="fa fa-bars" /> #{msg['common']}
</div>
<div class="widget-content">
<div class="form_wrapper">
<label>#{msg['projectname']}:<span class="required">*</span></label>
<h:inputText class="inputText"
value="#{projectBean.project.name}" label="#{msg['firstname']}"
required="true" autocomplete="off" />
<util:helptext helptext="#{msg['projectname.desc']}" show="true" />
</div>
</div>
</div>
<div class="widget box" style="width: 40%; float: left">
<div class="widget-header">
<i class="fa fa-bars" /> #{msg['workpackage']}
</div>
<div class="widget-content">
<label>#{msg['workpackagename']}:</label><br />
<span id="fooBar"><br /></span> <INPUT type="button" value="Add"
onclick="addInput()" />
<div style="clear: left;"></div>
</div>
</div>
<div style="clear: left;">
<h:commandButton id="button" class="button"
value="#{msg['button.save']}"
action="#{projectBean.createProject}" />
</div>
</h:form>
但是如何在bean中获取输入文本的值?
答案 0 :(得分:0)
您不需要使用javascript将值传递给bean。在您的代码中已存在h:inputText
,它将执行此操作。您需要使用getter和setter为value
的{{1}}属性中使用的属性创建适当的Java类。