0

我正在使用 Bootstrap 和 parsley.js(用于表单验证)一切正常,除了我现在在警报(引导程序)中显示错误消息现在,无论是否有错误,警报框都显示在屏幕上。我希望它仅在有错误时出现,并在 parsley.js 没有任何错误时消失。我已经尝试研究这个问题,发现一些隐藏警报框的代码,但没有一个与 Parsley.js 的警报一起使用。我输入了我自己的 Javascript,它认为我可以让它工作,但它没有(显然)。我应该改变什么?我应该把 javascript 一起扔掉然后做其他事情吗?我真的很希望每个警报都出现在它自己的警报框中,一个叠一个。我做了一个jsFiddle

两部分问题

  1. 使警告框仅在内部出现错误时出现。

  2. 使从 Parsley.js 传递的每个警报出现在它自己的警报框中(彼此堆叠在一起)

尝试的Javascript:

var x = document.getElementById("ol-error-container").innerHTML

            if (x == "")
            {
                document.getElementById("error-container").className +=" hide";
            }
            else
            {
                document.getElementById("error-container").className =" alert";
            }

Html 表单代码:

<form class="form-horizontal well" data-validate="parsley" method="post">
<div class="control-group">
    <input type="text" class="input-xlarge" id="fullName" placeholder="Full Name" data-required="true" data-error-container="ol#ol-error-container li.error-message" data-error-message="Please provide your name!">
</div>
<div class="control-group">
    <input type="text" class="input-xlarge" id="email" placeholder="E-mail Address" data-required="true" data-type="email" data-error-container="ol#ol-error-container li.error-message" data-error-message="You must provide a valid Email Address">
</div>
<div class="control-group">
    <input type="text" class="input-xlarge" id="phoneNumber" placeholder="Phone Number" data-required="true" data-type="phone" data-error-container="ol#ol-error-container li.error-message" data-error-message="You must provide a valid US Phone Number">
</div>
<div class="control-group">
    <textarea cols="5" class="input-xlarge" id="question" placeholder="Question/Comments" data-required="true" data-minlength="6" data-maxlength="200" data-error-container="ol#ol-error-container li.error-message" data-error-message="Please provide a message that is 6-200 characters in lenght."></textarea>
</div>
<div class="control-group">
    <div class="input-append">
        <input class="input-medium" id="priority" type="text" disabled>
        <div class="btn-group" data-required="true">
            <button class="btn dropdown-toggle" data-toggle="dropdown">Priority <span class="caret"></span> 
            </button>
            <ul class="dropdown-menu" id="selectPriority">
                <li><a onclick="document.getElementById('priority').value='High'">High</a>

                </li>
                <li><a onclick="document.getElementById('priority').value='Normal'">Normal</a>

                </li>
                <li><a onclick="document.getElementById('priority').value='Low'">Low</a>

                </li>
            </ul>
        </div>
    </div>
</div>
<div class="control-group">
    <button type="submit" class="btn btn-primary">Submit</button>
    <input type="reset" class="btn" value="cancel">
    <hr>
    <p class="muted"><small>We will never sell or provide your information to anyone!</small>

    </p>
</div>

HTML 警报框代码:

<div class="alert" id="error-container">
<ol id="ol-error-container" style="list-style-type:none">
    <li class="error-message" style="list-style-type:none"></li>
</ol>

4

1 回答 1

0

应该x == ""不是x = ""

于 2013-05-17T06:37:57.940 回答