A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 张洪慊 高级黑马   /  2013-8-25 18:57  /  1552 人查看  /  3 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 张洪慊 于 2013-8-25 19:54 编辑

由JS视频的添加附件代码想到的:
  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  2. <html xmlns="http://www.w3.org/1999/xhtml">
  3. <head>
  4. <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  5. <title>动态添加附件</title>
  6. <script type="text/javascript" src="JS/documentTools.js"></script>
  7. <style type="text/css">
  8. table{
  9.   border:1px solid #00F;
  10. }
  11. table td{
  12.   border:1px solid #999;
  13. }
  14. </style>
  15. <script type="text/javascript">
  16. function addAttachment(){
  17.     var count=0;
  18.         var tableNode=byID("tableID");
  19.         var trNode=tableNode.insertRow();
  20.         trNode.id="tr_"+(++count);//为每个行对象绑定一个编号
  21.         
  22.         trNode.insertCell().innerHTML="<input type='file'/>";
  23.         trNode.insertCell().innerHTML
  24.         ="<a href='javascript:void(0)'onclick='deleteAttachment("+count+")'>删除</a>";

  25. }

  26. function deleteAttachment(count){
  27.        alert(count)//测试实参是否传递成功
  28. }
  29. </script>
  30. </head>

  31. <body>
  32. <table id="tableID">
  33. <tr>
  34.   <td><a href="javascript:void(0)" onclick="addAttachment()">点击添加附件</a></td>
  35. </tr>
  36. </table>
  37. </body>
  38. </html>
复制代码
trNode.insertCell().innerHTML
        ="<a href='javascript:void(0)'onclick='deleteAttachment("+count+")'>删除</a>";
这个位置传入count变量的值,此时想到这个位置如何书写传入字符串常量("abc"...)?? 各种测试失败....

又测试一点:如果在定义一个变量 var str="abc"
trNode.insertCell().innerHTML
        ="<a href='javascript:void(0)' onclick='deleteAttachment("+str+")'>删除</a>";//失败,不能弹出abc

好吧..求正确书写方式..


评分

参与人数 2技术分 +2 黑马币 +30 收起 理由
吕振中 + 30 很给力!
神之梦 + 2 很给力!

查看全部评分

3 个回复

倒序浏览
好吧- -我不是骗分的,刚找到:JS不支持多层嵌套:" ' ' " 在嵌套就不OK了
这时候通过 \" 转义
"<a href='javascript:void(0)' onclick='deleteAttachment(\"abc\")'>删除</a>";
但是第二个问题还没解决:
var str="abc"
trNode.insertCell().innerHTML  ="<a href='javascript:void(0)'onclick='deleteAttachment("+str+")'>删除</a>";
回复 使用道具 举报
刚试出来:
var str="\"abc\"";
trNode.insertCell().innerHTML  ="<a href='javascript:void(0)'onclick='deleteAttachment("+str+")'>删除</a>";

评分

参与人数 1黑马币 +6 收起 理由
潘才新 + 6 腻强大了!

查看全部评分

回复 使用道具 举报
张兄强大,佩服{:soso_e179:}
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马