引导程序功能“显示的模态”未触发

时间:2018-12-11 13:27:25

标签: javascript php function bootstrap-modal

我可以使用脚本(id匹配)打开我的模态,但不会触发显示功能。我只想了解为什么我不能触发该功能?我的js语法错误吗?我应该在“文档准备就绪”功能中拥有全部功能吗?

主要

 <body>
<?php

    require 'connect.php';

    $r = $db->getReference('guests');
    $ref = $r->getChild($dat)->getChild($id);
    $value = $ref->getValue();
    $json = json_encode($value);

    require 'model.html';
?>
</body>

<script>
    $(document).ready(function(){

    $('#modalas').modal('show');

    var obj = JSON.parse('<?= $json; ?>');
    console.log(obj);
    var vardass = obj.vardas;

    $("#modalas").on("shown.bs.modal", function () {
    console.log(vardass)
    var modal = $(this)
    $("#post_form")[0].reset();
    modal.find('.modal-title').text(vardass)

        document.getElementById("NameInput").value = obj.vardas;
        document.getElementById("LastInput").value = obj.pavarde;
    })
})
</script>

1 个答案:

答案 0 :(得分:0)

该事件称为show.bs.modal而不是shown.bs.modal

来自https://getbootstrap.com/docs/3.3/javascript/#js-events

  

Bootstrap为大多数插件的唯一操作提供自定义事件。   通常,它们以不定式和过去分词形式出现-   在事件开始时触发不定式(例如show)的地方,   并且其过去分词形式(如所示)在   完成动作。

     

从3.0.0版本开始,所有Bootstrap事件都已命名空间。

     

所有不定式事件均提供preventDefault功能。这个   提供在执行动作之前停止执行动作的能力   开始。

$('#myModal').on('show.bs.modal', function (e) {   if (!data) return
e.preventDefault() // stops modal from being shown })