小编Par*_*090的帖子

外部JavaScript函数未定义,但存在

我有2个文件,一个HTML,一个JavaScript.

JavaScript文件(contacts.js):

function add_contact() {
    // Rest of Code here
}
Run Code Online (Sandbox Code Playgroud)

HTML文件:

<script src="/assets/js/contacts.js" type="javascript/text"></script>
Run Code Online (Sandbox Code Playgroud)

我有一个按钮,当它被点击时,它调用'add_contact'函数:

<button type="button" class="btn btn-primary" onclick="add_contact();">Save changes</button>
Run Code Online (Sandbox Code Playgroud)

当JavaScript代码是HTML文件的头部时,该函数可以正常工作.但是,现在它是外部文件的一部分,它返回以下错误:

未捕获的ReferenceError:未定义add_contact

我觉得这个有点失落,所以任何帮助都会太棒了!

html javascript

5
推荐指数
1
解决办法
3664
查看次数

使用 jQuery 打开时,Bootstrap Modal 不可滚动

我有一个引导模式设置,但我用通过 jQuery ajax 函数检索的数据填充它。如果使用以下代码打开模态,则它可以正常打开,并且可以滚动。

<button type="button" class="btn btn-warning btn-xs" data-toggle="modal" data-target="#editContact"><i class="fa fa-pencil"></i></button> 
Run Code Online (Sandbox Code Playgroud)

但是,当我用数据填充它时,我调用了一个 JavaScript 函数来执行 ajax 调用,并用数据填充它。该函数在按钮单击时调用,如下所示:

<button type="button" class="btn btn-warning btn-xs" onclick="open_contact(2);"><i class="fa fa-pencil"></i></button> 
Run Code Online (Sandbox Code Playgroud)

它调用以下 JavaScript 函数:

function open_contact(id)
{
    $.post("contacts/get",
    {
        // Posts relevant details to show the right content
    },
    function(data, status) {
        // Code here to check for valid response etc
        $('#editContact').modal('show');
    });
}
Run Code Online (Sandbox Code Playgroud)

这个 JavaScript 工作正常 - 它不会抛出任何错误并且可以很好地检索数据。它还打开模态罚款。但是,当使用 JavaScript 而不是使用第一个按钮(使用数据目标)打开模态时,整个浏览器窗口都会滚动,而不仅仅是模态。

作为参考,模态打开标签:

<div class="modal fade" id="editContact" tabindex="-1" role="dialog" aria-labelledby="editContact" aria-hidden="true">
    <div class="modal-dialog">
        <div class="modal-content">
            <div …
Run Code Online (Sandbox Code Playgroud)

javascript jquery twitter-bootstrap

5
推荐指数
1
解决办法
2569
查看次数

标签 统计

javascript ×2

html ×1

jquery ×1

twitter-bootstrap ×1