<script language=JavaScript>
   function queryString(a,b){
var re = eval("/" + b + "=([^&]*)/")
if (re.test(a)){
return RegExp.$1
}
else{
return 0;
}
}
var userid;
userid=queryString(window.location.href,"id");
var user_id=document.getElementById('user_id');
if(user_id!=null && userid==0) {
userid=user_id.value;
}
   document.write("<input type=hidden id=adid name=adid value="+userid+">");
  </script>

解决方案 »

  1.   

    document.write("<input type=hidden id=adid name=adid value="+userid+">");不用动态往页面上写这个 你就把它放到html中 也不妨事
    <input type='hidden' id='adid' name='adid' value="">
    然后你的原js中改下:
    var userid;
    userid=queryString(window.location.href,"id");
    var user_id=document.getElementById('user_id');
    if(user_id!=null && userid==0) {
     userid = user_id.value 
    }
    document.getElementById('adid').value = userid;//这样一样提交到后台的value是userid
      

  2.   

    恍然大悟,问题就出在这句话上了
    document.write("<input type=hidden id=adid name=adid value="+userid+">");
    因为type,id,name,value,的值默认可以不加“”号的,因此他把+userid+直接做为value的值来处理了。