我想通过js给后台C#程序传值 但是值取不到啊 源代码如下:
前台:aspx
<asp:HiddenField runat="server" id="hell"/>
<asp:Label ID="Label1" runat="server"></asp:Label>
<script type="text/javascript">
var strrr = document.getElementById("hell").value = "hello";
</script>
后台:cs
protected void Page_Load(object sender, EventArgs e)
{
string sstr = Request["hell"];
// Label1.Text= Request.Params["hell"];
//Label1.Text = this.hell.Value;
if (sstr == "hello")
Label1.Text = "get hello";
else
Label1.Text = "no hello";
}
Label1.Text = this.hell.Value;
题主的问题向我们展示了,编程界也存在鸡生蛋还是蛋生鸡的问题。
额 我只想简单的传值而已 能给个简单的例子吗
你想取的应该是 HiddenField 控件的值是吧? 你既然加了 runat="server" 那为什么还要通过js传值呢? 如果标签或者控件加了runat="server" 你直接在后台(所谓的cs)里用hell.value就行了。
另外还有一点, 你应该是asp的初学者吧? 你这里不应该在Page_Load里用js传值的, 这里就是为什么2L说“鸡生蛋还是蛋生鸡”。
如果有什么问题请继续追问, 没问题的话望采纳。
我是初学者 想通过js简单的将值传到后台cs程序
@纸风车_韦: 哦。 这个很简单, 最简单的方法就是就get传值, 就是用js写一个url。 然后把你要传的值用js追加在url里就可以了
这是个页面周期的问题吧 先执行PageLoad 再执行JS 所有你在PageLoad里是拿不到hello的
4楼说的对~~