js传值给服务器端?

时间:2022-12-02 10:42:04
前台的 查看详情是这样生成的, sbQueryResult.AppendFormat("<td style=\"cursor:pointer\" onclick=\"SeeDetail({0},'{1}')\">查看详情</td>", cursmid, tuceng_test);意思是当我点击查看详情的时候,相当于查看tuceng_test表中ID号为cursmid的记录,其中SeeDetail的JS代码只这样的

function SeeDetail(smid,tuceng)
{
 var a = tuceng;
 var b = a.indexOf("@");
 
 var layer = a.slice(0,b);

 document.cookie=layer;
  window.open ('detail/detail.aspx?id='+smid+"");
}
现在不想通过 document.cookie=layer;传递layer给后台,想问下我这种情况怎么样把layer传过去?

我把一个空间隐藏 通过  var v=document.getElementById("testBox");
  v.value="aaaa";这种方法,点击一个button可以把值穿过去,但是好像不适合我这种情况,当我在SeeDetail中用document.getElementById("testBox")的时候得到的值是NULL所以这种方法好像不行,有人说可以用Ajax,但是我不懂这种技术,望大侠帮忙

6 个解决方案

#1


放一个hidder
用这个传值

#2


通常是用一个runat server的hidden input传值给服务器

#3


用隐藏域hidden
<input type="hidden" id="hd" runat="server" />
前台把值传给hd 
后台直接hd.Value就能获取了

#4


引用 3 楼 dd__dd 的回复:
用隐藏域hidden 
<input type="hidden" id="hd" runat="server" /> 
前台把值传给hd 
后台直接hd.Value就能获取了

正解

#5


引用 3 楼 dd__dd 的回复:
用隐藏域hidden 
<input type="hidden" id="hd" runat="server" /> 
前台把值传给hd 
后台直接hd.Value就能获取了

正解

#6


谢谢大家的关注,最后我在网上也找到了一种解决办法,也贴出来供大家参考

var objXmlHttp=new ActiveXObject("Microsoft.XMLHTTP");//往后台传值
 var strUrl = "detail/detail.aspx?layer="+layer+"";//传给哪个页面的什么参数,具体情况具体定
     objXmlHttp.Open("POST",strUrl,false);  
     objXmlHttp.Send(); 

然后在后台用Request["layer"].ToString()取值就行了,蛮好用的

这种方法可行,楼上几位的应该也行,等哈试试,如果还有其他的方法,希望都贴出来,汇总下,方便已有学习

#1


放一个hidder
用这个传值

#2


通常是用一个runat server的hidden input传值给服务器

#3


用隐藏域hidden
<input type="hidden" id="hd" runat="server" />
前台把值传给hd 
后台直接hd.Value就能获取了

#4


引用 3 楼 dd__dd 的回复:
用隐藏域hidden 
<input type="hidden" id="hd" runat="server" /> 
前台把值传给hd 
后台直接hd.Value就能获取了

正解

#5


引用 3 楼 dd__dd 的回复:
用隐藏域hidden 
<input type="hidden" id="hd" runat="server" /> 
前台把值传给hd 
后台直接hd.Value就能获取了

正解

#6


谢谢大家的关注,最后我在网上也找到了一种解决办法,也贴出来供大家参考

var objXmlHttp=new ActiveXObject("Microsoft.XMLHTTP");//往后台传值
 var strUrl = "detail/detail.aspx?layer="+layer+"";//传给哪个页面的什么参数,具体情况具体定
     objXmlHttp.Open("POST",strUrl,false);  
     objXmlHttp.Send(); 

然后在后台用Request["layer"].ToString()取值就行了,蛮好用的

这种方法可行,楼上几位的应该也行,等哈试试,如果还有其他的方法,希望都贴出来,汇总下,方便已有学习