javascript问题

时间:2010-12-17 15:02:16

标签: javascript json response

如何让$(data.id)成为我的元素?目前,它将其评估为int,而不是具有指定id的标记。我已经跟踪了这个问题,根据FireBug,一切都是正确的值,直到这一点。

function editWinner( value, id )
{
    new Ajax.Request( 'ajax_edit_winner.php',
    {
        method: 'get',
        parameters: {
            value: value,
            id: id
        },
        onSuccess: function( response ) {
            var data = response.responseText.evalJSON();
            $( data.id ).setAttribute('onclick', 'editWinner( ' + !data.value + ', ' + data.id + ' )');
            $( data.id ).update( data.value );
        },
        onFailure: function(){ alert('Something went wrong...') }
    });
}

1 个答案:

答案 0 :(得分:1)

现在我看到这是原型(对不起)我建议尝试

  • $('' + data.id)即在传入之前将ID强制为字符串。
  • $$('#' + data.id)这是Prototype的选择器语法

根据您的JSON解析器,ID可能已经是一个字符串。除此之外,我不确定该建议什么。


旧答案:

要选择需要$('#tagId')的标记,即ID上的哈希前缀。没有它正在寻找给定类型的标签,例如$('div')找到div标签。 CSS selector reference

即。你可能想要$('#' + data.id)