第一:由於layui官方是沒有csrf_token處理機制,所以,在使用layui中post請求,請不要按layui官方提供的兩種方法進行設置
官方設置如下:
table.render({ elem: '#demp' ,url: '/ceshi/' ,method:'post' ,headers: {token: 'sasasas'} } //,…… //其他參數 }); 或者 table.render({ elem: '#demp' ,url: '/ceshi/' ,method:'post' ,where: {token: 'sasasas', id: 123} } //,…… //其他參數 });
注意:按以上設置是永遠都用不了
需要把參數改為django機制的csrfmiddlewaretoken機制,並且需要在靜態的html中插入{% csrf_token %}
首先在js中獲取 var token_value = $('[name="csrfmiddlewaretoken"]').val();
table.render({ elem: '#demp' ,url: '/ceshi/' ,method:'post' ,headers: {csrfmiddlewaretoken: token_value} } //,…… //其他參數 }); 或者 table.render({ elem: '#demp' ,url: '/ceshi/' ,method:'post' ,where: {csrfmiddlewaretoken: token_value, id: 123} } //,…… //其他參數 });
第二:layui中對表單中select賦值的處理
1.首先需要引入form,對於直行賦值,並重新加載,
layui.use('form', function() { var form = layui.form; $("#interest_glocal").val("寫作"); #對value直接賦值 form.render(); #賦值完,必須重新加載,這個一步很重要 });