将URL参数填充到h:inputText中

时间:2012-10-10 17:06:53

标签: javascript jsf facelets

我使用以下代码将URL参数检索到JavaScript变量中。

function getUrlParams() {
  var params = {};
  window.location.search.replace(/[?&]+([^=&]+)=([^&]*)/gi, function(str,key,value) {
    params[key] = value;
  });
  return params;
}
var vName = getUrlParams()["vName"];

我必须将vName设置为h:inputText

document.getElementById("Forid:Fldid").value = vName; // didn't work

我正在研究Facelets。

1 个答案:

答案 0 :(得分:1)

不要这么做。使用<f:viewParam>

<f:metadata>
    <f:viewParam name="vName" value="#{bean.vName}" />
</f:metadata>
...
<h:form>
    <h:inputText value="#{bean.vName}" />
    ...
</h:form>

@ManagedBean
@ViewScoped
public class Bean {

    private String vName;

    // Getter+setter.
}

就是这样。

另见: