将变量值从代码隐藏传递到javascript
我的.aspx页面中有一个隐藏变量将变量值从代码隐藏传递到javascript,javascript,asp.net,.net-3.5,Javascript,Asp.net,.net 3.5,我的.aspx页面中有一个隐藏变量 input type="hidden" runat="server" id="isdup" 现在在代码隐藏中,我检查某些条件,并相应地为isdup赋值。然而,这可能对您帮助不大,但这就是我在代码隐藏中所做的 bool exist = (from n in mCDC.NCDCPoints where n.EVENT_TYPE_ID == eventID
input type="hidden" runat="server" id="isdup"
现在在代码隐藏中,我检查某些条件,并相应地为isdup赋值。然而,这可能对您帮助不大,但这就是我在代码隐藏中所做的
bool exist = (from n in mCDC.NCDCPoints
where n.EVENT_TYPE_ID == eventID
where n.BeginDate == begin
where n.EndDate == end
select n).Count() > 0;
try
{
if (!exist)
{
//do this before insert so the insert will have correct values
isdup.Value = "false";
SaveAllColumnFields(ref ncdc, e);
mCDC.NCDCPoints.InsertOnSubmit(ncdc);
mCDC.SubmitChanges();
//do this after insert because it wont work until the ncdc object
//has been assigned an ID
SaveAllDynamicFields(mCDC, ref ncdc, e);
mCDC.SubmitChanges();
Grid1.CurrentPageIndex = 0;
}
else
{
isdup.Value = "true";
System.Windows.Forms.MessageBox.Show(isdup.Value);
}
现在我需要访问javascript中的isdup。然而,问题是这些值没有传递,isdup为空
var showus= document.getElementById("<%=isdup.ClientID %>").value;
alert(showus);
if(showus == "true")
{
Showduplicate();
}
var showus=document.getElementById(“”).value;
警惕(showus);
if(shous==“true”)
{
Showduplicate();
}
所以,请告诉我我犯了什么错误?您是否尝试过:
var showus= document.getElementById('<%=isdup.ClientID %>').value;
更新
bool exist = (from n in mCDC.NCDCPoints
where n.EVENT_TYPE_ID == eventID
where n.BeginDate == begin
where n.EndDate == end
select n).Count() > 0;
if (!ClientScript.IsStartupScriptRegistered("clientscript"))
{
string script1 = "<script language=JavaScript>";
script1 += "var showus= document.getElementById('" + isdup.ClientID + "').value;";
script1 += "alert(showus);";
script1 += "</script>";
ClientScript.RegisterStartupScript(typeof(Page), "clientscript", script1);
}
try
{
if (!exist)
{
//do this before insert so the insert will have correct values
isdup.Value = "false";
SaveAllColumnFields(ref ncdc, e);
mCDC.NCDCPoints.InsertOnSubmit(ncdc);
mCDC.SubmitChanges();
//do this after insert because it wont work until the ncdc object
//has been assigned an ID
SaveAllDynamicFields(mCDC, ref ncdc, e);
mCDC.SubmitChanges();
Grid1.CurrentPageIndex = 0;
}
else
{
isdup.Value = "true";
System.Windows.Forms.MessageBox.Show(isdup.Value);
}
bool exist=(从mCDC.NCDCPoints中的n开始
其中n.EVENT\u TYPE\u ID==eventID
其中n.BeginDate==开始
其中n.EndDate==end
选择n).Count()>0;
如果(!ClientScript.IsStartupScript已注册(“ClientScript”))
{
字符串script1=“”;
script1+=“var showus=document.getElementById(“+isdup.ClientID+”).value;”;
脚本1+=“警报(showus);”;
脚本1+=”;
RegisterStartupScript(typeof(Page),“ClientScript”,script1);
}
尝试
{
如果(!存在)
{
//在插入之前执行此操作,以便插入具有正确的值
isdup.Value=“false”;
SaveAllColumnFields(参考ncdc,e);
mCDC.NCDCPoints.InsertOnSubmit(ncdc);
mCDC.提交更改();
//在插入后执行此操作,因为只有在ncdc对象
//已经分配了一个ID
保存所有动态字段(mCDC,参考ncdc,e);
mCDC.提交更改();
Grid1.CurrentPageIndex=0;
}
其他的
{
isdup.Value=“true”;
System.Windows.Forms.MessageBox.Show(isdup.Value);
}
试试这个JQuery代码
var showus= $("#<%=isdup.ClientID %>").val();
什么版本的.net?4.0解决了这些类型的问题为什么要使用System.Windows.Forms.MessageBox是ASP.net应用程序?如何将isdup传递到视图?@Cybernate:我只是用它来检查值。@Chris Lively:我使用的是.net 3.5不,这不是页面的结尾尝试将javascript移到隐藏字段之后…就像在页面末尾一样page!我刚试过这个东西…它没有…它显示'eee',但不是来自代码背后的值。问题是我一直在更新主程序之外的isdup值…所以,你认为这是错误的吗?我更新了帖子,现在它从服务器代码中读取值!问题是我一直在更新主程序之外的isdup值。。。。那个么,你们认为这是一个错误吗?@Nishanth:我已经更新了我的答案,只需复制过去的代码并尝试一下即可。@Nishanth:这是因为你们无法获取jquery文件引用。@Nishanth:转到并将文件另存为
jquery-1.4.1.min.js
,然后将该文件添加到你们的解决方案资源管理器中。
protected void pagesTree_NodeClick(object sender, RadTreeNodeEventArgs e)
{
PageStructure page = pageService.GetPage(Guid.Parse(e.Node.Value));
this.LoadPageData(page);
isdup.Value = "xxx";
}
bool exist = (from n in mCDC.NCDCPoints
where n.EVENT_TYPE_ID == eventID
where n.BeginDate == begin
where n.EndDate == end
select n).Count() > 0;
if (!ClientScript.IsStartupScriptRegistered("clientscript"))
{
string script1 = "<script language=JavaScript>";
script1 += "var showus= document.getElementById('" + isdup.ClientID + "').value;";
script1 += "alert(showus);";
script1 += "</script>";
ClientScript.RegisterStartupScript(typeof(Page), "clientscript", script1);
}
try
{
if (!exist)
{
//do this before insert so the insert will have correct values
isdup.Value = "false";
SaveAllColumnFields(ref ncdc, e);
mCDC.NCDCPoints.InsertOnSubmit(ncdc);
mCDC.SubmitChanges();
//do this after insert because it wont work until the ncdc object
//has been assigned an ID
SaveAllDynamicFields(mCDC, ref ncdc, e);
mCDC.SubmitChanges();
Grid1.CurrentPageIndex = 0;
}
else
{
isdup.Value = "true";
System.Windows.Forms.MessageBox.Show(isdup.Value);
}
var showus= $("#<%=isdup.ClientID %>").val();
<asp:HiddenField ID="isdup" runat="server" EnableViewState="true" />
<script type="text/javascript" src="http://code.jquery.com/jquery-1.6.1.min.js"/>
<script type="text/javascript" language="javascript">
$(document).ready(function() {
var showus = $("#<%=isdup.ClientID %>").val();
alert(showus);
if (showus == "true") {
Showduplicate();
}
});
</script>