This website uses cookies to ensure you get the best experience. Learn More.
AUI Script - To Retrieve Selected Check Box Value in Liferay
Everything inside of an aui:script block that contains a “use” attribute is called asynchronously, so it could fire right away (if the resources are on the page) or if the network resolution is taking a long time, it could execute later on.
Bellow is an example: alert('not "using" any modules, Im fired right away'); alert('"using" aui-io, Im fired when its ready');
alert('not "using" any modules, Im fired right away'); alert('"using" aui-io, Im fired when its ready');
So we make sure never to define a function inside of an aui-script block that has a “use” attribute, unless we’re creating another module to be used.
But then how do you define a function that uses a module? Luckily, we can use Liferay.provide.
For simplicity here I have used two field which will indicated the checked and unchecked value of checkboks and can easily get this value on action class, like bellow: <aui:input name="addCommIds" type="hidden" value="" /> <aui:input name="removeCommIds" type="hidden" value="" />
<aui:input name="addCommIds" type="hidden" value="" /> <aui:input name="removeCommIds" type="hidden" value="" />
Bellow given the aui:script code:
Liferay.provide( window, 'saveEntry', function() { document.fm.addCommIds.value = Liferay.Util.listCheckedExcept(document.fm, "allRowIds"); document.fm.removeCommIds.value = Liferay.Util.listUncheckedExcept(document.fm, "allRowIds"); submitForm(document.fm); }, ['liferay-util-list-fields'] );
NB: listCheckedExcept is a javascript function we can simply call this function as bellow: <aui:button onClick="<%= renderResponse.getNamespace() + "saveEntry();"%>"value="save" />
<aui:button onClick="<%= renderResponse.getNamespace() + "saveEntry();"%>"value="save" />
Hope it helps..!!