`
k1121
  • 浏览: 180414 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

超链接传递中文参数解决之法

    博客分类:
  • java
 
阅读更多

办法很多,下面介绍一种更为通用,最有效的方式:

示例页面,其中包含post与get方式的提交:

<a class="need_change" href="myajax!getChineseWord.do?name=中文">中文测试</a>
    <form action="<%=path%>/myajax!getChineseWord.do" method="post">
        姓名:<input type='text' name="name" value="中文"><br>
        <input type="submit" value="post中文" id="login_btn">
    </form>

对于超链接中的中文,使用encodeURI编码,我们在jquery的ready中去做这件事:

$(document).ready(function(){
      $(".need_change").each(function(){
          $(this).attr("href", encodeURI($(this).attr("href")));
      });

}

服务器端action中,需要进行转码:

if ("ISO-8859-1".equals(StringUtil.getEncoding(name))) {
         name = new String(name.getBytes("ISO-8859-1"),"UTF-8");
}

 

注:StringUtil.getEncoding这个方法将返回字符串的编码集格式,代码是网上copy的,现贴出该方法:

/**
     * 判断字符串的编码
     * 
     * @param str
     * @return
     */
    public static String getEncoding(String str) {
        String encode = "GB2312";
        try {
            if (str.equals(new String(str.getBytes(encode), encode))) {
                String s = encode;
                return s;
            }
        } catch (Exception exception) {
        }
        encode = "ISO-8859-1";
        try {
            if (str.equals(new String(str.getBytes(encode), encode))) {
                String s1 = encode;
                return s1;
            }
        } catch (Exception exception1) {
        }
        encode = "UTF-8";
        try {
            if (str.equals(new String(str.getBytes(encode), encode))) {
                String s2 = encode;
                return s2;
            }
        } catch (Exception exception2) {
        }
        encode = "GBK";
        try {
            if (str.equals(new String(str.getBytes(encode), encode))) {
                String s3 = encode;
                return s3;
            }
        } catch (Exception exception3) {
        }
        return "";
    }

分享到:
评论

相关推荐

    webi 超链接传递参数跳转新文档

    ### Webi超链接传递参数跳转新文档 #### 概述 在SAP BusinessObjects (简称SAP BO)环境中,Web Intelligence (Webi) 是一个非常强大的工具,它支持用户创建交互式报告、仪表板以及复杂的分析视图。其中一个实用的...

    WEBI用超链接方式传递参数

    在IT领域,特别是针对商业智能(BI)工具的使用中,如何通过超链接方式传递参数是一种常见的需求。本文将深入探讨“WEBI用超链接方式传递参数”的具体操作方法及应用场景,帮助用户更好地理解并掌握这一技能。 ### ...

    超链接传值不显示中文

    在网页开发过程中,经常遇到的一个问题是超链接传递中文参数时出现乱码或无法正确显示的问题。这个问题主要由编码转换不当引起,尤其是在涉及不同编码环境(如客户端与服务器端)交互的情况下更为突出。 #### 一、...

    JSP页面中超链接传递中文参数出现乱码问题解决方法

    在解决方法中,首先应该明确超链接在传递参数时,是在URL的查询字符串中进行的。超链接格式如下: ``` 目标页面.jsp?参数名=参数值"&gt;链接文本 ``` 如上述示例中的页面一,超链接被设计为传递两个参数:name和...

    .NET中GridView中添加超链接字段和属性值,并向另一页中传递参数

    总结来说,在.NET中,通过在GridView中添加超链接字段并设置适当属性,我们可以创建链接并传递参数。在目标页面上,通过解析请求的URL或利用MVC的路由机制,可以捕获并使用这些传递的参数。这个过程涉及到HTML渲染、...

    HTML超链接传值

    在实际应用中,我们往往需要在点击超链接时传递一些参数,以便在目标页面能够获取这些信息并进行相应的处理。这被称为“HTML超链接传值”。在本篇文章中,我们将深入探讨如何实现这一功能,并结合HTML5的新特性,...

    html 中文乱码 HTML超链接中文乱码问题分析及解决方法

    解决方法是在Action中添加一个成员变量,保存编码后的中文参数。在vm页面渲染时取出这个变量值,再拼接超链接。 在这里碰到的问题是:调用java.net.URLEncoder的encode()方法时,如果没有显示指定字符集参数,那么...

    HTML超链接中文乱码问题分析及解决方法.docx

    HTML超链接中文乱码问题分析及...超链接中文乱码问题可以通过正确编码 URL 参数来解决。在 Java 中,我们可以使用 `java.net.URLEncoder` 的 `encode()` 方法来编码 URL 参数,并显示指定字符集参数,以确保正确编码。

    OUTLOOK内容中的超链接打不开解决办法

    OUTLOOK 内容中的超链接打不开解决办法 OUTLOOK 内容中的超链接打不开是一个常见的问题,很多用户在点击 OUTLOOK 内容中的超链接时,会弹出错误提示,从而无法打开超链接。这种问题通常是由于安装多个浏览器、卸载...

    jsp中URL传递中文参数的处理方法

    在页面的url中使用encodeURI(encodeURI(中文)),对中文... 您可能感兴趣的文章:js将json格式的对象拼接成复杂的url参数方法js的form表单提交url传参数(包含+等特殊字符)的两种解决方法JS根据key值获取URL中的参数值及

    Python 爬虫之超链接 url中含有中文出错及解决办法

    Python 爬虫之超链接 url中含有中文出错及解决办法 python3.5 爬虫错误: UnicodeEncodeError: 'ascii' codec can't encode characters 这个错误是由于超链接中含有中文引起的,超链接默认是用ascii编码的,所以不...

    RichTextBox控件扩展支持中文超链接

    一种解决方案是使用自定义的RTF控制词(control word)来标记超链接。例如,我们可以创建一个新的控制词如`\chhl`,并在其后面跟随链接的URL和中文文本。 3. **解析和插入超链接**:在插入超链接时,我们需要将中文...

    Struts2.0解决中文乱码

    在IT领域,特别是Web开发中,处理中文...通过在`struts.properties`文件中配置`struts.i18n.encoding`,并注意表单提交和超链接传递参数的处理,可以有效避免中文乱码问题,提升Web应用的用户体验和数据处理的准确性。

    jsp中四种传递参数的方法

    request.setAttribute() 和 request.getAttribute() 用于请求转发或页面内部传递数据,URL 超链接适用于链接导航传递简单参数,而 `&lt;jsp:param&gt;` 主要用于页面跳转或包含时传递参数。在实际开发中,开发者应根据具体...

    解决EXCEL超链接图片用网页打开设置方法

    解决EXCEL超链接图片用网页打开设置方法

    四种参数传递的形式——URL,超链接,js,form表单

    本文将介绍四种常见的参数传递形式:通过URL直接传递参数、使用超链接传递参数、通过JavaScript传递参数以及使用表单(form)传递参数。 首先,我们来解释每种参数传递方式的基本概念和用法。 1. URL直接传递参数...

    改超链接 C# 替换超链接

    在IT行业中,尤其是在软件开发领域,处理超链接是常见的任务之一。C#作为一种强大的编程语言,提供了丰富的功能来操作文本,包括替换超链接。本文将深入探讨如何在C#中修改或替换超链接。 首先,我们需要理解超链接...

    超链接(文本超链接、图像超链接)

    -- &lt;a href=""&gt;&lt;/a&gt; --&gt;超链接标签(用于从一个页面链接到另一个页面) 文本超链接 百度 &lt;!-- 不写值 "&gt;百度&lt;/a&gt; --&gt;空链接 &lt;a href=""&gt;&lt;/a&gt;百度 &lt;!-- 百度&lt;/a&gt; --&gt;空链接 百度 ...

    jsp超链接中文乱码的解决方法

    ### jsp超链接中文乱码的解决方法 在开发基于JSP(Java Server Pages)的Web应用程序时,可能会遇到一个常见的问题:超链接中的中文字符显示为乱码。这一问题通常发生在用户尝试通过包含中文字符的URL进行页面跳转...

    excel文件 超链接修复器

    "Excel文件超链接修复器"就是为了解决这个问题而设计的。这个程序由VB6.0编写,VB6(Visual Basic 6.0)是微软公司推出的一种面向对象的编程语言,它在创建桌面应用程序方面非常强大。 首先,我们需要理解超链接在...

Global site tag (gtag.js) - Google Analytics