从bean中获取javascript的输入值

时间:2014-03-06 14:06:06

标签: javascript jsf xhtml

首先,我根本不是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中获取输入文本的值?

1 个答案:

答案 0 :(得分:0)

您不需要使用javascript将值传递给bean。在您的代码中已存在h:inputText,它将执行此操作。您需要使用getter和setter为value的{​​{1}}属性中使用的属性创建适当的Java类。