【问题标题】:Encoding GBK2312 Condundrum编码 GBK 2312 难题
【发布时间】:2011-06-10 07:19:29
【问题描述】:

我是一名业余编码员,我有一个小问题。

我的目标是用两个按钮输入一个文本。

  • 第一个按钮使用了一点 Javascript 调用 SundayMorning 翻译文本(中文)
  • 第二个按钮将文本提交到 网址。 URl 要求中文 文本编码为 GBK2312 字符集。

我已经将各种找到的代码粘贴到我现在的结果中。由于 SundayMorning Javascript 的挑剔行为,我的解决方案是有两个输入框,我将隐藏第二个输入框。

目前,这不起作用:

  • 无论我如何尝试,我都无法在 GBK2312 中对中文进行编码。
  • BONUS CONUNDRUM:第二个框会在我键入时逐字母复制我的输入,但不会复制 Javascript 返回的中文翻译。

对不起,我的垃圾业余代码。如果您有任何好的建议,我会尊重那些更聪明的人。

<head>   
<meta http-equiv="Content-Type" content="text/html; charset=GB2312" /> 
<script type='text/javascript' Src='https://ajax.googleapis.com/ajax/libs/jquery/1.6.1/jquery.min.js'> 
</script> 

///THIS JS TRANSLATES THE TEXT INLINE  
<script
     type="text/javascript"
     src="jquery.sundaymorning.js"> 
</script> 
<script type="text/javascript"> 
    $(function() {
            $('#example3').sundayMorningReset();
        $('#example3 input[type=image]').click(function(evt) {
            $.sundayMorning(
                $('#example3 input[type=text]').val(),{source:'en', destination:'ZH', menuLeft:evt.pageX, menuTop:evt.pageY},function(response) {$('#example3 input[type=text]').val(response.translation);});});});
        </script> 
///

///THIS PUTS THE CONTENT OF THE TRANSLATION BOX INTO THE SUBMISSION BOX 
<script type="text/javascript"> 
$(document).ready(function(){
var $url = $("#url");
$("#track").keyup(function() {
    $url.val(this.value);});
$("#track").blur(function() {
    $url.val(this.value);});});
</script> 

///THIS PUTS THE CONTENT OF THE SUBMISSION INSIDE A URL 
<SCRIPT type="text/javascript"> 
function goToPage(url)
{
var initial = "http://example.com/";
var extension = ".html";  
document.something.action=initial+url+extension;
}
</SCRIPT> 

</head> 
<body> 

<div id="featured"> 
<div id="example3"> 
        <input type="text" name="track" id="track" value="" class="box"onkeydown="javascript:if (event.which || event.keyCode){if ((event.which == 13) || (event.keyCode == 13)) {document.getElementById('mama').click();}};"/> 
        <input type="image" src="http://taobaofieldguide.com/images/orange-translate-button.png" id="searchsubmit" value="Translate" class="btn" /> 
</div> 

<FORM name="something" method="post" onsubmit="goToPage(this.url.value);"> 
<input type="text" id="url";> 
<INPUT type="submit" id="mama" value="GO"  > 
</FORM>    
</div> 

</body> 

【问题讨论】:

    标签: javascript encodeuricomponent gb2312


    【解决方案1】:

    jQuery 插件看起来使用的是旧版本的 Google Translate API。

    在 SundayMorning 网站 (http://sundaymorning.jaysalvat.com/) 上,收到此错误消息:

    翻译错误:请使用 Translate v2。见http://code.google.com/apis/language/translate/overview.html

    您可能需要注册一个翻译 API 密钥并更新代码以使用谷歌翻译 v2 而不是 v1,或者找到一个“开箱即用”的新库。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2015-05-21
      • 1970-01-01
      • 2011-09-13
      • 2011-06-13
      • 1970-01-01
      • 1970-01-01
      • 2016-12-24
      相关资源
      最近更新 更多