Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/414.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/78.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 要隐藏按钮,请执行以下操作:_Javascript_Jquery_Asp.net - Fatal编程技术网

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();