Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/75.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
Jquery 引导选择不使用Asp.Net验证程序_Jquery_Html_Asp.net_Twitter Bootstrap - Fatal编程技术网

Jquery 引导选择不使用Asp.Net验证程序

Jquery 引导选择不使用Asp.Net验证程序,jquery,html,asp.net,twitter-bootstrap,Jquery,Html,Asp.net,Twitter Bootstrap,我正在使用Bootstrap3Select插件来让我的下拉列表更漂亮。在我为另一个控件(如文本框)的页面添加一个简单的RequiredFieldValidator之前,它工作得非常好。所有漂亮的下拉列表都将更改为典型下拉列表 这是我的HTML: <asp:DropDownList ID="ddlCategories" runat="server" CssClass="show-menu-arrow selectpicker" DataSourceID="dsCategories" Data

我正在使用Bootstrap3Select插件来让我的下拉列表更漂亮。在我为另一个控件(如文本框)的页面添加一个简单的
RequiredFieldValidator
之前,它工作得非常好。所有漂亮的下拉列表都将更改为典型下拉列表

这是我的HTML:

<asp:DropDownList ID="ddlCategories" runat="server" CssClass="show-menu-arrow selectpicker" DataSourceID="dsCategories" DataTextField="CategoryName" DataValueField="CategoryID">
</asp:DropDownList>
我知道Asp.Net验证程序在页面中添加了一些Javascript代码,我猜它们会引起一些冲突。我还使用了
$.noConflict()
,但没有成功

我需要知道如何解决这个问题

编辑:

呈现的标记如下所示:

<!DOCTYPE html>

<html xmlns="http://www.w3.org/1999/xhtml">
<head><title>

</title>
    <script src="/js/jquery-1.10.2.min.js"></script>
    <script src="/js/bootstrap.js"></script>
    <script src="/js/bootstrap-select.js"></script>
    <link href="/assets/css/bootstrap.css" rel="stylesheet" />

    <script type="text/javascript">
        $(window).on('load', function () {
            $('.selectpicker').selectpicker({
            });
        });
    </script>
</head>
<body>
    <form method="post" action="Test2.aspx" onsubmit="javascript:return WebForm_OnSubmit();" id="form1">
<div class="aspNetHidden">
<input type="hidden" name="__VIEWSTATE" id="__VIEWSTATE" value="Lu54Lc5gUoMcES3FS5vAFbfEDc2WKzPnEz29Y/3ecH2fPQjmLCl030G8zXJfv035qxsI7TaEKDLL7vpb2xD61vH7RnpFzze8sAOGlMFp+Vw=" />
</div>


<script src="/WebResource.axd?d=x2nkrMJGXkMELz33nwnakDs9KKDZZn2GO2GOnzQ8bhnAg5hg1uDK_xxs2F4qGzZL4suzNGfgwk1f_Kqd7w6GL2Mz9JWbGv_Uo50eVnuTPU81&amp;t=634773918900000000" type="text/javascript"></script>
<script type="text/javascript">
//<![CDATA[
function WebForm_OnSubmit() {
if (typeof(ValidatorOnSubmit) == "function" && ValidatorOnSubmit() == false) return false;
return true;
}
//]]>
</script>

<div class="aspNetHidden">

    <input type="hidden" name="__EVENTVALIDATION" id="__EVENTVALIDATION" value="vRZe0MAmYSmodYTkQXHZO1ZKY9EsMANgK1GXMQfTQ/Lke9yD8gU8jV56OwuAerfGHV5FTQnt+m2zQwARykzPYNpaD2HUK+lPDeGfKZazORSavMSQXAZHoeLR8Yzltk+3oS5ytg9B7n2ikrVh+v5DI1Ags0aEZzExyTTjsOFgBxOaBU8PcHXOyE/7XMK3TTOx" />
</div>
    <div>
        <select name="DropDownList1" id="DropDownList1" class="show-menu-arrow selectpicker">
    <option value="a">a</option>
    <option value="b">b</option>
    <option value="c">c</option>

</select>
    <input name="TextBox1" type="text" id="TextBox1" />
    <span data-val-controltovalidate="TextBox1" data-val-errormessage="RequiredFieldValidator" id="RequiredFieldValidator1" data-val="true" data-val-evaluationfunction="RequiredFieldValidatorEvaluateIsValid" data-val-initialvalue="" style="visibility:hidden;">RequiredFieldValidator</span>
    </div>
    </form>
</body>
</html>

$(窗口).on('load',函数(){
$('.selectpicker')。selectpicker({
});
});
//
A.
B
C
非空验证

我认为您的方法是正确的,实现的jQuery没有冲突版本

请尝试:

<script type="text/javascript">
    jQuery.noConflict();
    jQuery(window).on('load', function () {
        jQuery('.selectpicker').selectpicker({
        });
    });
</script>

jQuery.noConflict();
jQuery(window).on('load',function(){
jQuery('.selectpicker').selectpicker({
});
});

尝试在页面末尾调用所有与引导相关的脚本

我终于找到了答案!当我第一次在这个项目的一个页面上使用验证器时,我得到了一个错误:“WebForms UnobtrusiveValidationMode需要'jquery'的ScriptResourceMapping。”

我在谷歌上搜索,找到了两个解决方案。一个建议禁用ASP.NET4.5的一个新功能,另一个建议添加一些代码来正确配置它

我选择了后者(将
ScriptResourceMapping
添加到
Application\u Start
)。在我的项目中,我在其他地方遇到了这个问题

经过几天的挣扎,我没有得到答案,我突然意识到这可能是问题的原因


所以我改变了我的代码,并在Web.config中添加了一些密钥,现在它可以完美地工作了

定义“不工作”控制台中是否有错误?您需要提供更多信息,但我最初的猜测是将
CausesValidation=“false”
添加到DropDownList显示呈现的标记。@Khan,它已设置为false。@johnSmith,“不工作”表示DropDownList从引导样式更改为正常样式。在控制台中,有一个错误显示为“TypeError:$(…)。selectpicker不是函数”。但是添加一个简单的验证器会导致这种情况吗?
<script type="text/javascript">
    jQuery.noConflict();
    jQuery(window).on('load', function () {
        jQuery('.selectpicker').selectpicker({
        });
    });
</script>