使用javascript设置隐藏字段的值,然后从服务器端c#代码访问值
我使用嵌套的html无序列表作为下拉列表。 当单击内部列表列表项中的a标记时,它会触发一些javascript,该javascript应该将隐藏字段的值设置为单击的链接的文本。
javascript似乎工作 – 我使用警报从隐藏字段中读取值但是当我尝试将该值放在我的asp.net c#代码后面的查询字符串中时 – 它会拉出初始值 – 而不是javascript设置值。
我想这是因为javascript是客户端而不是服务器端,但任何人都知道如何让这个工作
HTML
JavaScript的
if(isChildOf(document.getElementById(parentList),document.getElementById(targ.id)) == true) { document.getElementById(parentLi).innerHTML = tname; document.getElementById(hiddenFormFieldName).Value = targ.id; alert('selected id is ' + targ.id + ' value in hidden field is ' + document.getElementById(hiddenFormFieldName).Value); }
C#代码
String qstr = "accom=" + getValFromLiId(accomodationAnswer.Value) + "&sleeps=" + getValFromLiId(sleepsAnswer.Value) + "&nights=" + getValFromLiId(nightsAnswer.Value) + "®ion=" + getValFromLiId(regionAnswer.Value) + "&price=" + Utilities.removeCurrencyFormatting(priceAnswer.Value);
我会这样做:首先,从隐藏字段中删除runat='server'
属性:
现在,在要读取该值的服务器上,执行以下操作:
string accomodationAnswer = Request.Form["accomodationAnswer"]; // now use accomodationAnswer instead of accomodationAnswer.Value // in the C# code that you indicated you are using
应该这样做。
试试这个
如果您使用.net 4.0然后在页眉中。
Language =“C#”AutoEventWireup =“true”CodeFile =“Page.cs”Inherits =“Page”
随着这个写:
ClientIDMode="Static"
它有助于在运行时不更改服务器端控件ID
现在
将javascript中的值设置为
document.getElementById(“hiddenField”)。value =“Vallue”;
并在下面的代码隐藏中访问。
string hiddenVallue = hiddenField.Value.ToString();
上述就是C#学习教程:使用javascript设置隐藏字段的值,然后从服务器端c#代码访问值分享的全部内容,如果对大家有所用处且需要了解更多关于C#学习教程,希望大家多多关注—计算机技术网(www.ctvol.com)!
本文来自网络收集,不代表计算机技术网立场,如涉及侵权请联系管理员删除。
ctvol管理联系方式QQ:251552304
本文章地址:https://www.ctvol.com/cdevelopment/1020629.html