如何在javascript中编码字符串并在java中解码字符串
我需要使用javascript在jsp中编码一个字符串,并将该字符串发送到spring控制器,然后用java解码该字符串,我目前正在做类似的事情 jsp中的javascript如何在javascript中编码字符串并在java中解码字符串,java,javascript,spring-mvc,Java,Javascript,Spring Mvc,我需要使用javascript在jsp中编码一个字符串,并将该字符串发送到spring控制器,然后用java解码该字符串,我目前正在做类似的事情 jsp中的javascript if(/^.%[a-zA-Z0-9- ]*$/.test(comments) == false) { // alert('Your comments contains illegal characters.'); var encodedComments = encodeURI(commen
if(/^.%[a-zA-Z0-9- ]*$/.test(comments) == false) {
// alert('Your comments contains illegal characters.');
var encodedComments = encodeURI(comments);
//alert(encodedComments);
} else{
var encodedComments = comments;
//alert(encodedComments);
}
在控制器中
String regex = "[a-zA-Z0-9-/.^%$/ ]*";
boolean m = Pattern.matches(regex, data[6]);
if (m == true) {
System.out.println("There is a sp. character in the string");
try {
comments = URLDecoder.decode(data[6], "UTF-8");
logger.info("The decoded string comments============>>>>>>>>>>>"+comments);
} catch (UnsupportedEncodingException e) {
e.printStackTrace();
}
} else {
System.out.println("There is no sp. char.");
comments = data[6];
logger.info("The remarks with no special characters is ============>>>>>>>>>>>"+comments);
}
例如:我在一个文本区域给出了评论:比如分数6.08%,编码的字符串是正确的,但是解码的字符串不工作,只是打印分数6而已。如何解码javascript编码的java字符串??
我是不是遗漏了什么
任何帮助都会很好
提前感谢。在javascript端,您需要始终通过java端进行编码,如果直接从查询字符串读取,您需要始终进行解码,如果您正在从request.getParameter读取数据,则根本不需要解码您需要用Javayes解码吗?我需要用Javayes解码,并将jsp中的变量以&&分隔的查询字符串发送到控制器,在这种情况下,我可以直接作为request.getParameter(数据[6])获取它,不需要解码吗?您是什么意思“从jsp到控制器”?参数应该用
&
分隔,我正在发送提交表单,并发送变量,如var dataId=var1+”&&&“+var2+”&&“+var3+”&&&&“+comments;this.form.action='${Url}/'+dataId;@sailaja,但正确的方式是${Url}/?'dataId;
并使用single&ok当然,我会使用single&,我如何在java代码中解码这个comments变量,如果我输入'score 67%,它将按原样显示,但当我给出'score 6.07%'时,它将显示'score 6',仅此而已。如何处理这种情况