将变量值从代码隐藏传递到javascript

将变量值从代码隐藏传递到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

我的.aspx页面中有一个隐藏变量

  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>