Почему моя глобальная переменная равна нулю? JavaScript / jeditable - PullRequest
0 голосов
/ 01 сентября 2011

Это действительно странно. Я позволю коду говорить.

var update_address = location.href+"/update.json"
var currentPageId = null;

$(document).ready(function() {

    $('.editable-td').click(function(){
        currentPageId = this.id;
        console.log(currentPageId);
    });

    $('.editable-td').editable(update_address, {
        submitdata:{
            pageID: currentPageId //This is the part to watch
        },

        type      : 'textarea',
        cancel    : 'Cancel',
        submit    : 'OK',
        tooltip   : 'Click to edit...'
    });
});

Первая функция определяет переменную как currentPageId, и она прекрасно печатается в консоли. Но когда я пытаюсь передать его в jeditable-функцию, получается нулевое значение. есть идеи?

1 Ответ

0 голосов
/ 01 сентября 2011

Я использовал плагин раньше. Используйте функцию вместо URL:

$('.editable-td').editable(function(value, obj){
        var self = this; //this is the `.editable-td` that was clicked
        console.log(self, obj, value);
        //now use jQuery's $.post with the url and the result
        $.post(update_address, {pageID: self.id, submit_value: value}, 
               function(data){
                    //do something with data
               });
        return value;
},{
    type      : 'textarea',
    cancel    : 'Cancel',
    submit    : 'OK',
    tooltip   : 'Click to edit...'
});
...