【问题标题】:Pass remark from user as string to java bean将用户的备注作为字符串传递给 java bean
【发布时间】:2013-07-07 18:03:27
【问题描述】:

我需要在按钮单击时接受用户的评论并将其作为字符串传递给后面的托管 bean。 这是我在jsp页面上的-

    <h:column>
            <button onclick="myFunction();">
                <h:commandLink value="Forward" action="#{add_leave.Forward()}">
                <f:param name="emp_id2" value="#{leave_requests.emp_id}" />
                <f:param name="request_id2" value="#{leave_requests.request_id}" />

                </h:commandLink>
            </button>
        </h:column>

这是javascript函数-

function myFunction()
{
    var x;
    var reason=prompt("Please enter your reason:","Reason");
    x=reason;

}

我在我的 bean AddNewLeave.java 的函数中需要这个原因变量 -

public void Forward()
{
    ...
    ...
    String reasonStr;
}

我该怎么做?另外,还有其他更简单的方法可以用来从用户那里获得要在其他地方使用的评论吗?我是 Web 应用程序编程的新手,并在需要时尝试学习。

【问题讨论】:

    标签: java javascript jsf


    【解决方案1】:

    您可以考虑使用&lt;h:inputHidden&gt; 在表单提交时自动将值发送到您的 bean:

    <h:form id="form">
        <h:inputHidden id="remark" value="#{bean.remark}" />
        ...
    </h:form>
    

    这样,一旦您通过 JavaScript 更新隐藏输入的值并随后提交表单,您最终将获得 JSF 为您预设的 bean 属性。

    JS sn-p 可以是:

    document.getElementById('form:remark').value = remark;
    

    当然,使用普通的&lt;input type="hidden"&gt;也可以获得相同的功能,但在这种情况下,您必须在请求参数映射中找到备注字符串。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-05-21
      • 1970-01-01
      • 2015-02-13
      • 1970-01-01
      • 1970-01-01
      • 2012-10-05
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多