javascript - Bootstrap 模态 : Undefined

标签 javascript jquery twitter-bootstrap

我正在尝试向我的网站添加一个模式,该模式会在表单的“名称”字段留空时出现,以通知用户。

到目前为止我所拥有的是:

<div id="myModal-winner" class="modal fade">
    <div class="modal-dialog">
       <div class="modal-content">
          <div class="modal-header">
               <button type="button" class="close" data-dismiss="modal" aria-hidden="true">&times;</button>
                <h4 class="modal-title">There is a Problem!</h4>
            </div>
            <div class="modal-body">
                 <p>Please Enter Name of Winner.</p>
             </div>
             <div class="modal-footer">
                <button type="button" class="btn btn-info" data-dismiss="modal">Ok</button>
             </div>
        </div>
    </div>
 </div>

如果 Name 留空,应该使模式出现的 JS:

//when user clicks on the "submit" button
    form.submit({point: point}, function (event) {
        //prevent the default form behavior (which would refresh the page)
        event.preventDefault();

        //form validation
        if( !$("input[name=name]", this).val() ) {
          $("#myModal-winner").modal('show');
        }

        //put all form elements in a "data" object
        var data = {
            name: $("input[name=name]", this).val(),
            address: $("textarea[name=address]", this).val(),
            about: $("textarea[name=about]", this).val(),
            month: $("select[name=month]",this).val(),
            year: $("select[name=year]",this).val(),
            lat: event.data.point.overlay.getPosition().lat(),
            lon: event.data.point.overlay.getPosition().lng()
        };
        trace(data)

        //send the results to the PHP script that adds the point to the database
        $.post("addwinner.php", data, tidy_maps.saveStopResponse, "json");

但是控制台返回:Uncaught TypeError: undefined is not a function,就行了:

  $("#myModal-winner").modal('show');

这是带有提交按钮的表单:

 <div class="winner-add">
<form class="form-horizontal winner-form" method="post" style="display: none" action="addwinner.php">
    <h4>Add Winner</h4>
    <img src="" >
    <fieldset>
        <label for="name">
            <span>Event Name :</span>
            <input id="name" type="text" name="name" placeholder="Enter Name of Winner" />
        </label>
        <label for="address">
            <span>Description :</span>
            <textarea id="address" name="address" placeholder="Address of Winner"></textarea>
        </label>
        <label for="about">
            <span>Description :</span>
            <textarea id="about" name="about" placeholder="Details of Award"></textarea>
        </label>
        <label for="image">
            <span>Upload a Photo:</span>
            <input type="file" id="image" name="image" />
        </label>
        <hr>

        <div class="form-actions">
            <input name="Save" type="submit" class="btn btn-success btn-sm" value="Save">
        </div>
    </fieldset>
</form>

最佳答案

我同意 Jarod 的观点,看起来 jQuery 没有被加载。确保您有<script src="path_to_jquery"></script>位于 Bootstrap 脚本标记的正上方。

或者,如果您的项目文件夹中没有 jQuery,您可以从互联网上获取它:<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.3/jquery.min.js"></script>

关于javascript - Bootstrap 模态 : Undefined,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29440871/

相关文章:

css - Bootstrap .container-fluid 内列固定

javascript - Ag Grid 单击复选框调用函数

javascript - Angular 没有根据模型更新我的选择元素

javascript - 具有多级导航的 toggleClass

javascript - 拖放功能不起作用

jquery - 导航栏覆盖背景颜色和图像

html - 如何在 Bootstrap 中调整容器中的内容?

javascript - jquery 将内容加载到 div 和 magicline

javascript - 需要在多个 Div 框 onClick 上使用函数

javascript - 如何访问从 JQuery 收到的 JSON 响应中的数据?