gpt4 book ai didi

Javascript数组添加一些显示不同长度的特殊字符时

转载 作者:行者123 更新时间:2023-12-02 06:39:45 33 4
gpt4 key购买 nike

在我的 jsp 页面中,我有一些 javascript 代码,用于获取文本框中输入的所有值。我将它们放入数组中,然后传递到下一页。这是我的 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;

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]+",";
}
}
}
window.location.assign("gt_Iba2?value="+attstr);
}

在第二个 jsp 页面中,我得到了该值。

String newValue=request.getParameter("value");
System.out.println("!###The new value in second jsp is "+newValue);
String[] allvalues=newValue.split(",");
System.out.println("The length of allvalues is "+allvalues.length);

我的第一个 jsp 中有五个文本框。我的代码正确地从这些文本框中选取值,并仅在不包含某些特殊字符时传递到其他页面。 img1

上述条件的输出对我来说很好。

!###The new value in second jsp is A|B|C|Dbcdrt,A|B|C|Dbcdrt,A|B|C|Dbcdrt,A|B|C|Dbcdrt,A|B|C|Dbcdrt
The length of allvalues is 5

因此,当我添加任何字符(如 #、&、%)时,数组就会被破坏。这意味着在该字符之后它不会采用其他值。

在本例中img2

我在第三个文本框中添加了“&”符号。所以我得到这样的输出

!###The new value in second jsp is A|B|C|Dbcdrtdf,A|B|C|Dbcdrtdf,A|B|C|Dbcdrtdf 
The length of allvalues is 3

在“&”符号之后,它不显示任何值。大小也是三。如果我在第二个文本框中添加它,大小将为二。为什么这些符号会出现这种行为?我也需要传递这些符号。我在这里做错了什么?我需要一些帮助

谢谢

最佳答案

& 符号分隔 URL 中的获取参数 (parameter1=value&parameter2=value2)。因此该符号后面的所有内容都被视为第二个参数。

如果您使用 JavaScript 函数 encodeURIComponent 来编码 attrstr 那么它应该可以工作。

关于Javascript数组添加一些显示不同长度的特殊字符时,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19268601/

33 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com