_hospital_WAR_hospitalportlet_
の先頭に追加された文字列Id
は<input>
、ポートレットの名前空間に他なりません。
タグを使用する場合、これは<input>
のname
&id
属性の先頭に追加されるだけであり、 plain-vanilla htmlタグのみを使用する場合、 &属性は変更されません。<aui:input>
name
id
<input>
ただし、使用<aui:input>
することをお勧めします。次のようにして、JavaScript コードでポートレットの名前空間を取得できます。
JSP 内で JavaScript を使用している場合、つまり within<script> .. </script>
またはを使用している場合は、またはを使用して JavaScript 内の文字列を取得<aui:script> .. </aui:script>
できます。<portlet:namespace />
<%= renderResponse.getNamespace() %>
_hospital_WAR_hospitalportlet_
jQuery("#<portlet:namespace />username").val();
// Or
jQuery("#<%= renderResponse.getNamespace() %>username").val();
ただし、ファイルを使用している場合は、名前空間を引数としてファイル*.js
内の javascript 関数に渡すことをお勧めします。js
function changeValues(portletNamespace) { // this function is in a js file
jQuery("#" + portletNamespace + "username").val("Lets change");
}
JSP からこの関数を呼び出します。
<input type="button" onClick="changeValues('<portlet:namespace />')" />
お役に立てれば。Liferay によって定義された JavaScript 関数を介してnamespace
orを直接取得する方法があるかどうかはわかりません。portletId
そのようなものを取得した場合は、ここに投稿できます。これは非常に役立ちます。