使用javascript在c#中调用jquery函数

本文关键字:调用 jquery 函数 javascript 使用 | 更新日期: 2023-09-27 17:50:15

脚本代码:

  <script type="text/javascript">
             $(document).ready(function () {
                 $("#visualization").css('display', 'none');
             });
         </script>
           <script type="text/javascript">
               $('#info a').click(function drawVisualization() {
                   $("#visualization").css('display', 'block');
               });
         </script>

加载时,我隐藏了div,我想通过点击

按钮来显示divasp.net代码:

<asp:Button ID="Button1" runat="server" Text="Button" 
  onclick='blue' />
c#代码:

 protected void blue(object sender, EventArgs e)
        {
            ClientScript.RegisterStartupScript(this.GetType(), "TestInitPageScript",
            string.Format("<script type='"text/javascript'">drawVisualization();</script>"));
        }

我对编码相当陌生,有人能帮我解决这个问题吗?在不可见之后,我无法显示可视化(div)

使用javascript在c#中调用jquery函数

有一种更简单的方法来做到这一点,它不涉及完全不必要的回发到服务器。像这样:

$('#<%= Button1.ClientID %>').click(function () {
    $("#visualization").show();
});

这将为Button1的客户端呈现输出分配一个JavaScript点击处理程序。当然,Button1仍然会导致回发,但是由于它不需要在服务器端执行任何操作,因此它甚至不需要成为服务器端控件。改成这样:

<input type="button" id="button1" value="Button" />

然后调整jQuery选择器以使用客户端id:

$('#button1').click(function () {
    $("#visualization").show();
});

如果你所做的只是显示/隐藏页面元素,并且你已经使用JavaScript来完成它,服务器端代码是完全不必要的

你可以像

Page.ClientScript.RegisterStartupScript(this.GetType(),"CallMyFunction","$('#visualization').css('display', 'block');",true);
<asp:Button ID="Button1" runat="server" Text="Button" 
  onclick='display()' />
<script>
  function display()
  {
   $("#visualization").show();
  }
</script>

$(document)。Ready (function () {

    $("#visualization").css('display', 'none');
    $('#Button1').click(function(){
          $("#visualization").css('display', 'block');  
     });

});

我会在客户端完成这一切。这样就可以了。

$("#Button1").on("click", function(e){
      $("#visualization").show();
  });

如果没有理由做回发,您可以在调用.show();之后做e.preventDefault();

比起创建Button OnClick事件,您可以编写一个简单的jquery或javascript来获得所需的输出

有多种方法可以解决上述问题。

1)你可以在asp.net中编写按钮控件的OnClientClick属性并传递值为在上面代码中创建的javascript函数名drawVisualization()另一个重要的事情是,你将不得不删除runat="server"属性,因为它会导致回发(意味着你的页面再次重新加载,这将导致div隐藏)

2)你可以创建一个jquery按钮点击事件如:

首先创建一个简单函数

           function drawVisualization() {
               $("#visualization").css('display', 'block');
           });

,然后按钮点击事件

 $('#button1').on( "click", function() {
     drawVisualization(); //call the function that you have created to show the desired output
 });