如何从代码后面调用jquery代码?

时间:2014-05-09 05:23:04

标签: c# jquery asp.net

现在我正在使用此脚本隐藏div元素

$(document).ready(function () { 

            $('#<%=phaseOne.ClientID%>').hide();
            $('#<%=phaseTwo.ClientID%>').hide();
            $('#<%=phaseThree.ClientID%>').hide();
});

我希望它在触发一个基于数据库中的逻辑和状态的按钮时,以$('#<%=phaseOne.ClientID%>').show();代码显示示例

3 个答案:

答案 0 :(得分:3)

你可以调用javascript fucntion,如下所示

在C#代码中,您可以在条件

完成时调用以下代码
ScriptManager.RegisterStartupScript(this, Page.GetType(), "key", "Display()", true);

在.aspx页面中,您可以使用下面提到的div和功能

<script type="text/javascript">
 function Display() {            
            var e = document.getElementById('<%=phaseOne.ClientID%>');         
            if (e.style.display == 'block')
                e.style.display = 'none';
            else
                e.style.display = 'block';
            return false;
        }
 </script>

<div id="phaseOne" style="display: none;position:absolute;  
    top:300px;
    right:250px;  "</div>

答案 1 :(得分:1)

请尝试以下操作:

<script type="text/javascript">
$(document).ready(function () { 
   HideAll();
}
 function HideAll() 
{   
  $('#<%=phaseOne.ClientID%>').hide();
  $('#<%=phaseTwo.ClientID%>').hide();
  $('#<%=phaseThree.ClientID%>').hide();
}

function ShowPhase1()
{
  $('#<%=phaseOne.ClientID%>').show();
}

</script> 
  • 使用GetType()代替typeof(Page),以便将脚本绑定到您的实际页面类而不是基类

  • 传递一个密钥常量而不是Page.UniqueID,这不是那么有意义,因为它应该由命名控件使用,

  • 使用semicolon
  • 结束您的Javascript语句

Button Click的代码背后:

if(somecondition==true)
{
  ScriptManager.RegisterStartupScript(this, GetType(), "key", "ShowPhase1();", true);
}

将功能添加到show/hide并从代码隐藏调用。

答案 2 :(得分:0)

将您的代码更改为以下内容:

$(document).ready(function () { <% if (someservervalue == true) { %> $('#<%=phaseOne.ClientID%>').show(); <% } else { %> $('#<%=phaseOne.ClientID%>').hide(); <% } %> $('#<%=phaseTwo.ClientID%>').hide(); $('#<%=phaseThree.ClientID%>').hide(); });

另一种方法是使用Page.RegisterClientScriptBlock。更多信息:http://msdn.microsoft.com/en-us/library/system.web.ui.page.registerclientscriptblock(v=vs.110).aspx