Ok, so how about combining the two together:

<x:script language="javascript" type="text/javascript">
<x:scriptParameter for="myInputText" />
function disableMyInputText()
{
 var input = document.getElementById('$myInputText$');
 input.disabled=true;
}
</x:script>

Surrounding it with dollar signs should make the template code
editable in an existing javascript IDE, right?

As for the dataTable issues, I would say that that would just have to
be a limitation of the tag.  If you can't assign an id to the
UIComponent within the same namingcontainer as your <x:script>, then
you just can't use it.  In this case, you would have to include your
javascript within a custom component that is not reliant on an id.


On Mon, 03 Jan 2005 14:35:46 -0800, Travis Reeder
<[EMAIL PROTECTED]> wrote:
> I like it, but for simplicity's sake if the x:script is going to replace
> matching id strings, then I don't see the need for having the for and
> the id.  Why not just the for like so:
> 
> <x:script language="javascript" type="text/javascript">
> <x:scriptParameter for="myInputText" />
> function disableMyInputText()
> {
>  var input = document.getElementById('myInputText');
>  input.disabled=true;
> }
> </x:script>
> 
> 
> Travis
> 
> Heath Borders wrote:
> 
> >Here is the JSP and rendering hints I was thinking about for the
> ><x:script /> tag.
> >
> >JSP Example:
> >
> ><h:inputText id="myInputText" value="#{bean.text}" />
> ><x:script language="javascript" type="text/javascript">
> ><x:scriptParameter for="myInputText" id="p_myInputText" />
> >function disableMyInputText()
> >{
> >  var input = document.getElementById('p_myInputText');
> >  input.disabled=true;
> >}
> ></x:script>
> >
> >
> >The language and type attributes would be optional, and default to
> >"javascript" and "text/javascript" respectively.
> >
> >The scriptParameter would use the UIComponent.findComponent(String)
> >method to find a component within the current namingContainer with the
> >given id.  The <x:script> tag would then search its bodyContent for
> >any strings matching the <x:scriptParameter> id's and replace them
> >with the clientId of the UIComponent from the <x:scriptParameter> for
> >attribute.
> >
> >This would be a simple way to include javascript (and appropriate code
> >commenting and <noscript> tags for non-javascript browsers) in JSF
> >code.
> >
> >I'd appreciate any input on this design.
> >
> >
> >
> 
> -- 
> Travis Reeder
> Ecommstats Web Analytics
> www.ecommstats.com
> 
> 


-- 
-Heath Borders-Wing
[EMAIL PROTECTED]

Reply via email to