【问题标题】:Getting textbox value from X-editable从 X-editable 获取文本框值
【发布时间】:2015-01-22 07:32:06
【问题描述】:

如何获取文本框字段的值并在ajaxOptions 内以data 发送?我测试了我的视图,它从我的 Django 视图中成功打印了测试变量。我正在为 Jquery 使用X-editable。下面是文本框输入的样子:

http://jsfiddle.net/xBB5x/197/

views.py

def create_post(request):

    print request.POST.get("test", "");
    return HttpResponse(json,content_type="application/json")

HTML

<a id="other1" data-pk="First Name" data-name="test">First Name</a>

AJAX

$(document).ready(function() {

        $('#other1').editable({
            type: 'text',
            pk: 1,
            url: '/create_post/', 
            ajaxOptions: {

                    data: {

                    csrfmiddlewaretoken: '{{ csrf_token }}',
                    test: "hi",
                    },


                },  
            placement: 'top',
            title: 'New Expense',
            success: function(response, newValue) {
                if(response.status == 'error') return response.msg; //ms
            },  

        });

    });

【问题讨论】:

    标签: ajax django x-editable


    【解决方案1】:

    使用params 代替ajaxOptions。如果我没记错的话,test 及其值将由 x-editable 包含在您的 POST 请求中。试试这样的:

    HTML

    <a id="other1" data-pk="1" data-name="test">First Name</a>
    

    AJAX

    $(document).ready(function() {
        $('#other1').editable({
            type: 'text',
            url: '/create_post/', 
            params : function(params) {
                params.csrfmiddlewaretoken = '{{ csrf_token }}';
                return params;
            }, 
            placement: 'top',
            title: 'New Expense',
            success: function(response, newValue) {
                if(response.status == 'error') return response.msg; //ms
            },  
    
        });
    });
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-10-22
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多