每个ajax发送一个数组到python-server-script

时间:2016-11-22 12:34:33

标签: javascript python ajax

当我点击一个按钮时,我想发送我的表单元素的所有名称,值和标签,我没有提交一个提交按钮,因为我得到了错误的顺序,所以我在JavaScript中创建它:

$('#mybutton').click(function() {
    m.modal('show'); 

    var all=[];

    $('textarea, select, input').each(function(index){
        var label= $(this).parent().find('label').html();
        var value= $(this).val();
        var name= $(this).attr('name');
        all.push([name,value,label]);           
    })

    $.ajax({
         dataType: "text",
         url: "befund",
         data: {
            wert : all  
         },
         success: function(data){
            $('#mymodal').find('.modal-body').html(data); 
         }
    })
});

在python服务器脚本(瓶子)中我试试这个:

@app.route('/web/befund')
def modalcontent() -> str:
       x = request.query.wert[0][1]  
       print (x)
       return('test')

问题在于我在浏览器中看到正确的数组是发送但是当我尝试用" request.query.wert [0] [1]"来查看数组的一个元素时我只得到一个http-error 500(internerl服务器错误)。请有人帮帮我吗?

2 个答案:

答案 0 :(得分:1)

您可以使用POST(如果这是敏感数据并且您的连接是安全的,则应该使用data: { wert: JSON.stringify(all) }, )。 但是,您需要将数据转换为JSON字符串,然后在服务器上对其进行解码。

wert = json.loads(request.params.wert);
print wert[0][1]

在服务器上:

sudo apt-get install chromium-browser

答案 1 :(得分:0)

我认为它是服务器端的对象。尝试通过`x = request.query.wert [0]

访问数据

或  X = request.query [ 'WERT'] [0]

我现在不使用python,但它似乎是正确的