Subject: Re: Re: [xsl] Get Variables in XSL from URL From: "miouge@xxxxxxxxxxx" <miouge@xxxxxxxxxxx> Date: Sun, 30 Apr 2006 13:29:50 +0200 |
Bonjour Andrew Franz, I would like use onlye a client side script :) ` bienttt, Cordialement Guyot Maxime. ======= le 29/04/2006, 03:01:06 vous icriviez: ======= >This is not strictly on-topic - however, my experience is that >parameters are best handled outside of XSL (and server-side if possible) > >The following function removes certain request parameters (in this >example, those suffixed with .x or .y) & reassembles & reloads the URL >without them. >Maybe you can adapt it for your needs. > >function delparam() { > var oldurl = parent.document.location.href; > var qparts = oldurl.split("?"); > var newurl = qparts[0]; > if (qparts.length > 1) { > // remove any "rqop" parameter, or operations will be repeated > var vars = qparts[1].split("&"); > var sep = "?"; > for (var i=0; i < vars.length; i++) { > var parts = vars[i].split("="); > if ((parts[0].substr(parts[0].length-2) == ".x") || >(parts[0].substr(parts[0].length-2) == ".y")) { > // do nothing > } else { > newurl += sep+ parts[0]+ "="+ parts[1]; > sep = "&"; > } > } > } > parent.document.location.href = newurl; >} > >Server-side, I use the following approach: >This snippet is JSP but I imagine that you can adapt it as well. >It excises the parameters named in "list" and returns the others in a ><request> tag for further processing by XSL. > > <c:set var="list" >value="${fn:split('spr,sprname,listinterval,listsrc', ',')}" /> > <c:set var="listplus" value="${fn:join(list,',')}," /> > <request> > <c:forEach var="par" items="${paramValues}"> > <c:forEach var="value" items="${par.value}"> > <c:set var="keyplus" value="${par.key}," /> > <c:if test="${not fn:contains(listplus, keyplus)}"> > <jsp:element name="${par.key}">${value}</jsp:element> > </c:if> > </c:forEach> > </c:forEach> > </request> > > > > >miouge@xxxxxxxxxxx wrote: > >>Hello, >>I would like to get some variables from the URL (file.xml?var1=value1&var2=value2) in the test.xml's xsl file (all of this in the client-side) and so have try this code: >><msxsl:script language="javascript" implements-prefix="prefix"> >>function getURLvar(name){ >> var params = location.search.substring(1).split("&"); >> var variables = new Array(); >> for (i in params) { >> var segments_var = params[i].split("="); >> variables[segments_var[0]] = unescape(segments_var[1]); >> } >> function setFile(file) { >> iSend = send; >> } >>return variables[name]; >>} >></msxsl:script> >> >>and use this one to print on screen the value of the GET variables.... >> >> <xsl:value-of select="prefix:getURLvar(test)" /> >> >>But it seems not to be a good Method... and i ask if their is a better solution to achieve my goal. >> >>Thanks, and sorry for my bad english. >> >>Maxime G. >> >> >>--~------------------------------------------------------------------ >>XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list >>To unsubscribe, go to: http://lists.mulberrytech.com/xsl-list/ >>or e-mail: <mailto:xsl-list-unsubscribe@xxxxxxxxxxxxxxxxxxxxxx> >>--~-- >> >> >> >> > > >--~------------------------------------------------------------------ >XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list >To unsubscribe, go to: http://lists.mulberrytech.com/xsl-list/ >or e-mail: <mailto:xsl-list-unsubscribe@xxxxxxxxxxxxxxxxxxxxxx> >--~-- > = = = = = = = = = ========= = = = = = = = = = = miouge miouge@xxxxxxxxxxx 30/04/2006
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
Re: [xsl] Get Variables in XSL from, Andrew Franz | Thread | [xsl] Web Host for XSLT 2.0 Project, Mike Wilt |
Re: [xsl] Empty namespace attribute, Joe Fawcett | Date | RE: [xsl] Empty namespace attribute, Michael Kay |
Month |