CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
IBM Rational 系统开发最佳实践工具包 WebSphere MQ 最佳实践 TOP 15
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  其他开发语言 >  脚本语言(Perl ,Python)

高分求一个Perl和javeScript的问题

楼主dalin9603(dalin9603)2006-03-17 21:53:50 在 其他开发语言 / 脚本语言(Perl ,Python) 提问

我在Perl中加入javaScript语句。实现从一个文本框中传入文本本值到Perl函数中.具体如下:  
  (1)、这里用javaScript创建一个文本框并从中取得输入的文本值  
  <html>  
  <script   type="text/javascript">  
  <!--  
                    function   myJavaScriptFunction()//响应函数  
  {  
      var   args=new   Array(2);  
      args[0]   =   document.getElementById("s2_1").value;        
      window.external.Call(   "myPerlFunction",   args);  
  }  
  //   -->  
  </script>  
  <input   type="text"   id="s2_1">  
  <input   type="button"   name="s2"   value="检索"   onclick="myJavaScriptFunction();">  
   
  (2)、这个是Perl的函数  
  sub   myPerlFunction()  
  {  
          my   ($str)   =   @_;  
          if($str   eq   "输入文本")  
        {  
                &setView($str);  
          }  
  }      
   
  (3)、我进行这样的操作:  
  在文本框中输入"输入文本"几个字符后点按钮后取得字符,跟踪程序发现在Perl的函数即myPerlFunction()中的变量$str的值为“输入文本”;可是执行if($str   eq   "输入文本")判断时发现这判断并没有返回真值.  
  这是什么原因,怎么解决?$str的值明明是"输入文本"啊,请高手指教!谢谢!50分敬上 问题点数:50、回复次数:7Top

1 楼jiangsheng(蒋晟.Net[MVP])回复于 2006-03-18 11:25:37 得分 12

在传递参数的时候数组会分解为列表。如果你要传递一个数组,那么就传递数组的引用Top

2 楼dalin9603(dalin9603)回复于 2006-03-20 13:05:01 得分 0

可是用数字或是英文字符如输入“123”;这if($str   eq   "123")语句的结果是相等的Top

3 楼michael_g_hu(一代风云)回复于 2006-03-20 13:19:28 得分 12

建议你把变量的字符一个一个打印一下,肯定有地方不一样Top

4 楼DelphiNew(沙鼠)回复于 2006-03-20 19:47:23 得分 12

chomp一下就可以了。。Top

5 楼xyzxyz1111(程序员的自我修养)回复于 2006-03-21 11:19:25 得分 14

看看中文编码Top

6 楼dalin9603(dalin9603)回复于 2006-03-22 10:34:44 得分 0

谢谢大家!这问题我现在可以肯定是中文编码不一致,可是我用下面的转换后问题还是不能解决,在C中我用  
  MultiByteToWideChar(936,   0,   result,   -1,   szwtemp,   sizeof(wchar_t)*len);  
  WideCharToMultiByte(CP_UTF8,   0,   szwtemp,   -1,   sztemp,   sizeof(wchar_t)*len,   NULL,   NULL);转换中文编码,在perl中用<META   charset="UTF-8">来设置也还是不行。Top

7 楼dalin9603(dalin9603)回复于 2006-04-27 21:08:13 得分 0

谢谢大家!这个因为“输入文本”是GBK字符,转化为UTF-8后正常.Top

相关问题

  • 谁给我Perl Builder 2 的注册码,我高分换取!!!!!
  • 高分求解:如何用perl远程连接oracle?
  • 高分求教PERL特殊排序代码!
  • PERL高手,请帮忙
  • perl DBI !高手请进
  • perl正则高手请进!
  • perl有关百分比的问题?
  • 建议将Perl和Python分开
  • TF,DF统计(perl),顶者有分
  • 高分请教Sambar5.0下面如何设置比如LB 5000 II或者BBS3000等论坛的perl?

关键词

  • 文本
  • 字符
  • 函数
  • 编码
  • perl
  • 中文
  • 输入
  • 数组
  • 文本框
  • 谢谢

得分解答快速导航

  • 帖主:dalin9603
  • jiangsheng
  • michael_g_hu
  • DelphiNew
  • xyzxyz1111

相关链接

  • CSDN Blog
  • 技术文档
  • 代码下载
  • 第二书店
  • 读书频道

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
北京创新乐知广告有限公司 版权所有, 京 ICP 证 070598 号
世纪乐知(北京)网络技术有限公司 提供技术支持
Copyright © 2000-2008, CSDN.NET, All Rights Reserved
GongshangLogo