Javascript 要隐藏按钮,请执行以下操作:
Javascript 要隐藏按钮,请执行以下操作:,javascript,jquery,asp.net,Javascript,Jquery,Asp.net,$(“#u btnOk”).attr('style','display:none!important') 您必须在jquery加载后调用函数。您可以在函数之后放置“()” 这是一个例子: $(function () { var _btnOk = $("#_btnOk"); _btnOk.hide(); })(); 我相信这种方法将是有效的: $(document).ready(function(){ $("button[id*='_btnOk']").hide(); }
$(“#u btnOk”).attr('style','display:none!important')代码>
您必须在jquery加载后调用函数。您可以在函数之后放置“()”
这是一个例子:
$(function () {
var _btnOk = $("#_btnOk");
_btnOk.hide();
})();
我相信这种方法将是有效的:
$(document).ready(function(){
$("button[id*='_btnOk']").hide();
});
您的问题是asp:FormView创建了一个iframe
所以jquery找不到您的按钮,
因为它不在主框架中
正如教程中所说,
要使用jquery访问iframe中的元素,必须执行以下操作:
var _btnOk = $("#<%= _btnOk.ClientID %>");
$("#_fvMain").contents().find("#_btnOk").hide();
参考:
回答。这只是抛出一个异常(无法识别的表达式)。可能你错过了,但我的代码中的问题不是获取对\u btnOk
对象的引用,而是隐藏它。你是否尝试使用firebug检查页面,看看真实的按钮ID是什么?ID是正确的,我可以调试代码,清楚地看到按钮对象被正确找到,但.hide()
方法不起作用。我很确定问题在于,由于元素在编辑模板中,所以在呈现页面时它不存在,或者文档无法识别它。如果使用函数pageLoad(sender,args){$(function(){var_btnOk=$(“#u btnOk”);_btnOk.hide()},则准备就绪)
可能会有用。另一种方法是,在元素中添加一个“dummy”类CssClass=“butt\u orange\u small dummyclass”
,然后搜索它,dummy类不需要存在,我们使用它只是为了搜索它,然后你可以通过该类来查找它,它将是唯一的。只需添加更多信息,“id”您在FormView中设置的ID不会是整个页面的最后一个ID,请记住,由于“btnOK”嵌套在FormView中(任何可绑定控件也会发生这种情况),因此它将使用其父名称加上一个“”,因此最终ID将是“\frmMain\uu btnOK”或类似的内容,因此方法是$('\35;')。hide()
是解决方法。我测试了您的标记和函数,没有问题:按钮被正确隐藏。为了确保调用函数时加载了所有内容,您可以尝试$(document).ready(函数(){$(“#u btnOk”).hide()});
。如果标记中存在任何其他脚本代码,您可以对其进行注释,以确保它不会干扰当前调试(例如,调用函数时隐藏按钮的父项).@thepanch不存在。触发document.ready事件时按钮存在。如您所见,默认模式为“编辑”。我还尝试了伪类方法,但这也不起作用。ClientMode='static'属性允许预测ID值。调试脚本时,我清楚地获得了button对象的引用。最正确的莱宁回答。非常感谢你的帮助。
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Default.aspx.cs" Inherits="AspFormTest.Default" %>
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title></title>
</head>
<body>
<form id="form1" runat="server">
<div>
<asp:Button
ID="_btnOk"
ClientIDMode="Static"
Text="Ok"
runat="server"/>
</div>
<button type="button" onclick="hideShowButton();">Hide or Show ok button</button>
<button type="button" onclick="hideShowButtonToggle();">Toggle button</button>
</form>
<script src="https://code.jquery.com/jquery-2.2.1.min.js"></script>
<script type="text/javascript" language="javascript">
function hideShowButton() {
var aspNetWayOfResolvingId = $("#<%= _btnOk.ClientID %>"); // use this if clientidmode is not static
var _btnOk = $("#_btnOk");
if(_btnOk.is(":visible"))
_btnOk.hide();
else
_btnOk.show();
}
function hideShowButtonToggle() {
var aspNetWayOfResolvingId = $("#<%= _btnOk.ClientID %>"); // use this if clientidmode is not static
var _btnOk = $("#_btnOk");
_btnOk.toggle();
}
</script>
</body>
</html>
$("#<%= _btnOk.ClientID %>");
<style>
.test{
}
</style>
$(".test").hide();
$(function () {
var _btnOk = $("#_btnOk");
_btnOk.hide();
})();
$(document).ready(function(){
$("button[id*='_btnOk']").hide();
});
$("#_fvMain").contents().find("#_btnOk").hide();