如果参数很长,弹出窗口不会打开

时间:2014-07-07 16:07:17

标签: javascript jquery

我正在创建一个应用程序,其中弹出窗口需要在按钮单击时打开,其中包含三个参数。 如果我只传递1个参数,一切都有效,但如果我传递更多参数(它们很长),则不会打开弹出窗口。 这可能是什么问题?

<?php
         $number = mt_rand(1,50000); //generate anti-csrf token
         $entry = base64_encode($number);
         $escape = sha1($number);
         ?>
           <a href="#" onclick="javascript:popUp(<?php echo $reviews->companyid; ?>,<?php echo $entry; ?>,<?php echo $escape; ?>);">Concur</a> |

Popup opener

<script type="text/javascript">
  function popUp(id,entry,escape)
  {
    popupWindow = window.open('admin_browse_userprofile.php?id='+id+'&entry='+entry+'&escape='+escape,'User','resizable=yes,scrollbars=yes,width=650,height=550');
      popupWindow.focus();
  }
  </script>

1 个答案:

答案 0 :(得分:1)

唯一原因是第一个起作用的原因是你有数字并且数字不需要引号。

它会抛出一个错误,因为你的字符串没有用引号括起来。

popUp(123,FOO,BAR);

应该是

popUp(123,'FOO','BAR');

如果里面的文字包含“和'你需要处理它们。