进行AJAX调用,将下拉值传递给python脚本

2024-06-16 11:11:05 发布

您现在位置:Python中文网/ 问答频道 /正文

我想从包含数据库名称的下拉列表中传递选定的值,并将其传递给后台的python脚本,该脚本连接到传递的数据库名称。 下面是我编写的ajax代码

<script type="text/javascript">
    $(document).ready(function(){
        $("button").click(function(){
            $.ajax({
          url : "/form_submit",
          data : $('#databases').val(),
          type : 'POST',
          success : alert("Hi dear count " + $('#databases').val())
        });
        });
    });
</script>

“databases”是HTML中select标记的id。我正在写数据:

^{pr2}$

将数据传递给python代码。在

下面是接受传递值的python代码。如果我直接从控制台运行下面的代码,那么它将以json格式返回结果,但是间接运行它没有成功

@app.route("/form_submit/", methods=['GET','POST'])
def connect():
    import json
    dtb = request.select['value']
    db = MySQLdb.connect("localhost","root","",dtb)
    cursor =  db.cursor()
    cursor.execute("SELECT * FROM REPORT_SUITE")
    results = cursor.fetchall()   
    json_return_value =[]

    for result in results:
        table_data = {'REPORTSUITE_ID' : result[0], 'REPORTSUITE_NAME' : result[1], 'STAGING_DATABASE' : result[2], 'DWH_DATABASE' : result[3], 'TRANS_TABLE' : result[4]}
        json_return_value.append(table_data)
    print ("hi")
    print json.dumps(json_return_value)
    return json.dumps(json_return_value)

我已经将变量声明为dtb = request.select['value'],它应该接受通过AJAX调用传递的数据库名称。 此外,我应该能够在我的web浏览器中看到JSON格式的返回数据。 我四处查看并应用了许多建议的解决方案,但我仍然无法确定如何传递和捕捉传递的值。在


Tags: 数据代码脚本名称数据库jsondatareturn