javascript
  • jquery
  • python
  • html
  • ajax
  • 2017-10-12 128 views -1 likes 
    -1

    這很簡單,如果我在靜態html文件中執行它,但是因爲我使用Flask工作,所以很難。Python/Flask - 在JavaScript文件中引用文本文件

    我有一個正確包含Javascript文件的html頁面。這個java腳本文件有一個AJAX函數,它將讀取一個文本文件。

    有誰知道我是否可以在Python燒瓶webapp中引用Javascript中的文本文件?

    HTML:

    <script src="{{ url_for('static',filename='js/my.js') }}"></script> 
    

    JS:

    function alertFunc() { 
        $.ajax({ 
         url : "/Users/me/myfile.txt", //I believe this is the issue! 
         dataType: "text", 
         success : function (data) { 
          $("#div1").html(data); 
         } 
        }); 
    

    我已經把測試功能在這個js文件和它的作品所以與HTML頁面的JS網頁鏈接沒有問題。

    回答

    1

    .txt文件添加到您的靜態文件夾

    然後指向/static/my.txt

    或添加一個端點(@app.route('my_text.txt')),並返回它...

    它真的很容易...林不知道爲什麼你有挖掘燒瓶......我認爲它就像在html中一樣容易,在燒瓶中你的威力遠遠大於簡單的html ...

    main.py

    from flask import Flask,render_template 
    
    app = Flask(__name__) 
    
    
    @app.route('/') 
    def hello_world(): 
        return render_template('index.html') 
    
    
    if __name__ == '__main__': 
        app.run() 
    

    靜態/ main.js

    function alertFunc() { 
        $.ajax({ 
         url: "/static/my_text.txt", 
         dataType: "text", 
         success: function (data) { 
          console.log(data) 
          $("#div1").text(data); 
         } 
        }); 
    } 
    

    靜態/ my_text.txt

    just a simple message 
    

    模板/ index.html的

    <script src="https://code.jquery.com/jquery-2.1.4.min.js"></script> 
    <script src="/static/main.js"></script> 
    <div id="div1"></div> 
    
    <script> 
        alertFunc() 
    </script> 
    
    +0

    我已經嘗試將其添加到靜態文件夾!,但引用JS文件中的txt文件不以這種方式工作:{{url_for('static',filename ='my.txt')}} – Macbook

    +0

    它確實工作得很好... –

    +0

    好,所以我明白如何把它放在靜態文件夾中,但你能給我一個清晰的例子,說明如何引用JS中的文本文件?---------- URL :/static/my.txt ?? – Macbook

    相關問題