为什么jquery说错过了:在属性id之后?

时间:2012-10-30 09:45:04

标签: javascript jquery ajax

我为滑块切换框编写了以下jquery代码。当我执行它时,jquery说缺少:属性id之后。

function toggleBox(){
     $(".toggleLink").toggle(                                         
           function() {
                $(this).parent('.toggleBoxContainer').find('.toggleBox').slideUp('slow');
                var SlideStatus = $(this).parent('.toggleBoxContainer').find('.hiddenFilterID').text(); 
                $.get(window.location ,{ $(this).parent('.toggleBoxContainer').find('.hiddenFilterID').text() : SlideStatus} );
                console.log($(this).parent('.toggleBoxContainer').find('.hiddenFilterID').text()); 
                }, function() {
                $(this).parent('.toggleBoxContainer').find('.toggleBox').slideDown('slow');
                $.get(window.location ,{ SlideStatus : null } );
             });  
}

我做错了。非常感谢帮助

2 个答案:

答案 0 :(得分:3)

如果需要动态密钥名称,请使用对象的关联数组表示法

var myobject = {};
myobject[SlideStatus] = SlideStatus;
$.get(window.location, myobject);

答案 1 :(得分:0)

您的第一个$.get声明没有意义。您将$(this).parent('.toggleBoxContainer').find('.hiddenFilterID').text()的值分配给变量SlideStatus,然后将相同的变量名称传递给$.get语句。

$.get调用之外使用不同的变量名,或者将您传入的参数的名称更改为$.get调用。目前,它们是错误的方式(它应该是propertyName : propertyValue)。