url传值只得接收到数字,求大神解惑

url传值只能接收到数字,求大神解惑
这是我写的父界面用于打开一个子界面,准备用url传递msg的值到子界面

<%@ page language="java" contentType="text/html; charset=utf-8"
    pageEncoding="utf-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>father</title>
</head>
<body>
<script>
function send(){
var msg = document.getElementById("msg").value;
window.open("son.jsp?msg="+msg,"","width=400,height=400,scrollbars=yes");
}
</script>

<td>
<input type="text" name="msg" id="msg"/>
</td>

<td>
<input type="button"  value="传值" onclick="send()">
</td>

</body>
</html>

这是我写的子界面

<%@ page language="java" contentType="text/html; charset=utf-8"
    pageEncoding="utf-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>son</title>
</head>

<body onload=receive()>
<script>
function receive(){
var msg="";
msg=<%=  request.getParameter("msg")%>;
alert("s");
alert(msg);
}
</script>
<div id="msg"></div>
</body>
</html>

结果只有在父界面输入纯数字,子界面中才会接收到,求大神解惑
------解决思路----------------------
msg="<%=  request.getParameter("msg")%>";
------解决思路----------------------

function receive(){
    var msg="<%=  request.getParameter("msg")%>";
    alert("s");
    alert(msg);
}

------解决思路----------------------
 onclick='ping(\""+lisenceId+"\");' 

引用:
Quote: 引用:

msg="<%=  request.getParameter("msg")%>";

这么写的确是可以了,不知能不能再回答我一个类似的问题

<script>
      function ping(lisenceId)
      {
       alert(lisenceId);
       window.open("xxx.jsp?lisenceId="+lisenceId,"_blank","width=400,height=300,toolbar=no,scrollbars=yes");
      } 
</script>
cellxxx.innerHTML = "<a href ='javascript:void(0)' onclick='ping("+lisenceId+");' style='color:blue'>xxx</a>";

现在是只有lisenceId为纯数字时才能触发ping(),不知是为什么有字符的话就不行了。