2016-06-21 63 views
0

在asp.net项目中,首先我必须隐藏表格行,当点击linkbutton然后显示此表格行。所以我在名为ShowDiv的OnClientClick链接按钮上调用一个函数。现在的问题是,在调用该函数后,它再次转到document.readyfunction。我需要显示表格行上asp链接按钮

<script type="text/javascript"> 
    $(document).ready(function() { 
     $("#trUpdateImportEmail").hide(); 
    }); 
    function ShowDiv() { 
     $("#trUpdateImportEmail").show() 
    } 
</script> 

<asp:LinkButton ID="lnkUpdateEmail" runat="server" CausesValidation="False" CommandName="Select" Text='Update Import Email' OnClientClick="Show()"></asp:LinkButton> 
+0

你能后的链接按钮标记?点击按钮后页面是否重新加载? –

+0

@Rob Lang:请立即检查。我也尝试设置默认显示:'trUpdateImportEmail'为none,linkbutton将调用ShowDiv函数。但仍然得到相同的问题 –

+0

你需要'OnClientClick =“return Show()”'。这是一个重复的问题。 –

回答

1

在你的代码文件被重新加载上点击按钮。因此,请在您的函数中使用返回falseevent.preventdefault()以防止文档重新加载。

<script type="text/javascript"> 
$(document).ready(function() { 
    $("#trUpdateImportEmail").hide(); 
}); 
function ShowDiv() { 
    $("#trUpdateImportEmail").show(); 
    return false; 
} 

或者

<script type="text/javascript"> 
$(document).ready(function() { 
    $("#trUpdateImportEmail").hide(); 
}); 
function ShowDiv(event) { 
    event.preventdefault(); 
    $("#trUpdateImportEmail").show(); 
} 

1

因为asp:LinkBut​​ton是一个服务器端控件,它会事后回发。 当您的调试器再次跳转到document.ready时,它因为页面可能已被重新加载。

使用OnClientClick时,它不会取代LinkBut​​ton行为(即回发),它只是在它之前运行。

尝试从js函数返回false(因为它返回true)。 ,让你的OnClientClick样子:

return ShowDiv(); 
相关问题