在javascript函数中传递两个以上的值

在javascript函数中传递两个以上的值,javascript,function,jsp,Javascript,Function,Jsp,在我的jsp页面中,我有一个用于点击按钮的javascript函数。在这个函数中,我需要将一些值传递给下一个jsp页面。我可以将两个值作为参数传递,但在给出三个值时,它不起作用。不起作用意味着当点击按钮时控件不会进入下一页 这个很好用 window.location.assign("gt_Iba2?value="+uri+"&len="+<%=height%>); 我的javascript函数 <SCRIPT LANGUAGE="JavaScript">

在我的jsp页面中,我有一个用于点击按钮的javascript函数。在这个函数中,我需要将一些值传递给下一个jsp页面。我可以将两个值作为参数传递,但在给出三个值时,它不起作用。不起作用意味着当点击按钮时控件不会进入下一页

这个很好用

window.location.assign("gt_Iba2?value="+uri+"&len="+<%=height%>);
我的javascript函数

<SCRIPT LANGUAGE="JavaScript">
                function gt2()
                {
                var pqr="100";
                var arr=new Array();
                var x=<%=height%>;
                var attstr=null;
            for(var t=0;t<x;t++)
            {
            var a="inputText"+t;

                var e=document.getElementById(a);
                var val= e.value;
                if(val.indexOf(",") !== -1){
                alert("Legal value Constraint can't allow comma");
                return;
                }
                arr[t]=val;

                if(t==0)
                {
                attstr=arr[t]+",";
                }

                if((t!=x)&&(t!=0))
                {
                if(t==x-1)
                {
                attstr+=arr[t];
                }
                else
                {
                attstr+=arr[t]+",";
                }

                }
          }
            var uri=encodeURIComponent(attstr);
            window.location.assign("gt_Iba2?value="+uri+"&len="+<%=height%>+"&SelectedValue="+<%=typeNameToPass%>);

函数gt2()
{
var pqr=“100”;
var arr=新数组();
var x=;
var-attstr=null;
对于(var t=0;t尝试:

window.location.assign("gt_Iba2?value="+uri+"&len=<%=height%>&SelectedValue=<%=typeNameToPass%>");
window.location.assign(“gt_Iba2?value=“+uri+”&len=&SelectedValue=“);

您的代码适用于高度,可能是因为它是数字。然后您将在JS中获得类似于
“[…]”&len=“+80
,但如果
typeNameToPass
是字符串值,您将获得
“[…]”&len=“+80+”&SelectedValue=”+someString
-除非
someString
是一个变量,否则您将得到错误。

可能
包含引号?您的
高度
typeNameToPass
的值是什么?可能它们形成了一个错误的js字符串。@MatteoTassinari不,它们只是字符串。实际上高度是一个整数值请显示实际值w这会产生错误。您可以发布
可以接受的值吗?
<SCRIPT LANGUAGE="JavaScript">
                function gt2()
                {
                var pqr="100";
                var arr=new Array();
                var x=<%=height%>;
                var attstr=null;
            for(var t=0;t<x;t++)
            {
            var a="inputText"+t;

                var e=document.getElementById(a);
                var val= e.value;
                if(val.indexOf(",") !== -1){
                alert("Legal value Constraint can't allow comma");
                return;
                }
                arr[t]=val;

                if(t==0)
                {
                attstr=arr[t]+",";
                }

                if((t!=x)&&(t!=0))
                {
                if(t==x-1)
                {
                attstr+=arr[t];
                }
                else
                {
                attstr+=arr[t]+",";
                }

                }
          }
            var uri=encodeURIComponent(attstr);
            window.location.assign("gt_Iba2?value="+uri+"&len="+<%=height%>+"&SelectedValue="+<%=typeNameToPass%>);
window.location.assign("gt_Iba2?value="+uri+"&len=<%=height%>&SelectedValue=<%=typeNameToPass%>");