Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/73.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jquery表排序器-连字符错误_Jquery_Tablesorter - Fatal编程技术网

Jquery表排序器-连字符错误

Jquery表排序器-连字符错误,jquery,tablesorter,Jquery,Tablesorter,我做了一个非常基本的示例,当我在第一行、第一个单元格上使用连字符时,tablesorter不再工作。 我正在使用jQuery1.7.1和最新的tablesorter.min.js 代码示例: 工作->无连字符: 工作->第二行上的连字符: 不工作->第一行第一个td上的连字符: 您可以看到的代码与3个示例上的代码完全相同,只是表数据发生了更改 有人经历过同样的问题吗?有什么解决方法吗?我不太喜欢tablesorter,但是我发现在您的示例中,有一个简单的解决方法是总是插入一个隐藏的tr,td,并

我做了一个非常基本的示例,当我在第一行、第一个单元格上使用连字符时,tablesorter不再工作。 我正在使用jQuery1.7.1和最新的tablesorter.min.js

代码示例:

工作->无连字符: 工作->第二行上的连字符: 不工作->第一行第一个td上的连字符:

您可以看到的代码与3个示例上的代码完全相同,只是表数据发生了更改


有人经历过同样的问题吗?有什么解决方法吗?

我不太喜欢tablesorter,但是我发现在您的示例中,有一个简单的解决方法是总是插入一个隐藏的tr,td,并在顶部插入一个:

            <tr style="display:none">
                <td>A</td>                                                                                          
            </tr>      

我不太喜欢tablesorter,但在您的示例中,我发现一个简单的解决方法是总是插入一个隐藏的tr,td,并在顶部插入一个:

            <tr style="display:none">
                <td>A</td>                                                                                          
            </tr>      

嘿,这就是为什么它不起作用的原因&hack-y解决方案

原因:

因此,it表格分拣机代码确实负责dash-

但我正在阅读插件,应该弄清楚为什么隐藏的第一行可以解决这个问题

可能的解决办法:

a它检查至少一个字符以开始解析连字符/破折号-如果您知道任何HTML编码可以伪造一个不会出现的字符。我用下划线试了一下,效果也不错。我会继续玩,但是

b*如果*你可以试着把它作为第一行,这将是非常棒的-在顶部做一个空行,包含一些内容,然后第二行作为破折号

Working CODE: (In your JSFiddle - change your TBODY to this one and this should work man.

       <tbody>
 <tr style="display:none;">
                    <td>foobar</td>                                                                                          
                </tr>                
                <tr>
                    <td>-</td>                                                                                          
                </tr>
                <tr>
                    <td>B</td>                                               
                </tr>
                <tr>
                    <td>C</td>                                               
                </tr>
            </tbody>
我希望到目前为止这能有所帮助


干杯,

嘿,这就是它不起作用的原因&hack-y解决方案

原因:

因此,it表格分拣机代码确实负责dash-

但我正在阅读插件,应该弄清楚为什么隐藏的第一行可以解决这个问题

可能的解决办法:

a它检查至少一个字符以开始解析连字符/破折号-如果您知道任何HTML编码可以伪造一个不会出现的字符。我用下划线试了一下,效果也不错。我会继续玩,但是

b*如果*你可以试着把它作为第一行,这将是非常棒的-在顶部做一个空行,包含一些内容,然后第二行作为破折号

Working CODE: (In your JSFiddle - change your TBODY to this one and this should work man.

       <tbody>
 <tr style="display:none;">
                    <td>foobar</td>                                                                                          
                </tr>                
                <tr>
                    <td>-</td>                                                                                          
                </tr>
                <tr>
                    <td>B</td>                                               
                </tr>
                <tr>
                    <td>C</td>                                               
                </tr>
            </tbody>
我希望到目前为止这能有所帮助


干杯,

实际上,当tablesorter试图确定每列中包含的数据类型时,它会与破折号混淆。。。它是文本还是减号?如果在debug设置为true的情况下运行插件,您将看到它将解析器设置为digit。这是一个例子

因此,最好的非黑客解决方案是将标题解析器设置为文本:

$(".tableresult").tablesorter({
    headers: {
        0: { sorter:'text' }
    }
});

最后,请不要使用$.readyfunction{};作为文件准备功能。在jQuery的最新版本中,它仍然受到支持,但它将继续使用,并且支持很可能在将来被删除。使用$function{}。

实际上,当tablesorter试图确定每列中包含的数据类型时,它会与破折号混淆。。。它是文本还是减号?如果在debug设置为true的情况下运行插件,您将看到它将解析器设置为digit。这是一个例子

因此,最好的非黑客解决方案是将标题解析器设置为文本:

$(".tableresult").tablesorter({
    headers: {
        0: { sorter:'text' }
    }
});

最后,请不要使用$.readyfunction{};作为文件准备功能。在jQuery的最新版本中,它仍然受到支持,但它将继续使用,并且支持很可能在将来被删除。改用$function{}。

之前的帖子也这么说,我觉得很惭愧,我没有想到这么简单的解决方法,谢谢!之前的帖子也是这么说的,我觉得很惭愧,我没有想到这么简单的解决方法,谢谢!请参阅非黑客方法;谢谢你但文件准备就绪[不推荐]是一个很好的分享阅读和为什么他们得到推荐;我现在正在读有关它的书。欢迎查看非黑客方法;谢谢你但文件准备就绪[不推荐]是一个很好的分享阅读和为什么他们得到推荐;我现在正在读有关它的书。干杯,汉克+1布鲁夫;赞成;回复此修复后,请阅读标题选项:顺便说一句,此处共享:==>[QUOTE],最后,请不要使用$.readyfunction{};作为文件准备功能。在jQuery的最新版本中,它仍然受支持,但不建议使用,并且支持很可能在将来被删除。改用$function{}.[UNQUOTE]干杯,谢谢+1布鲁夫;赞成;回复此修复后,请阅读标题选项:顺便说一句,此处共享:==>[QUOTE],最后,请不要使用$.readyfunction{};作为文件准备功能。在jQuery的最新版本中,它仍然受支持,但不建议使用,并且支持很可能在将来被删除。改用$function{}。[UNQUOTE]干杯,