Tablesorter jQuery - فرز عمود بنص وأرقام مختلطة
-
23-09-2019 - |
سؤال
لدي جدول مع عمود من البيانات التي يتم خلطها النص والأرقام. أقوم بفرزه باستخدام jQuery و TableSter Plugin. البيانات التي لن تكون فرزها بشكل صحيح هي علامات المعدات ، على سبيل المثال ، "Ahu-1" ، "AHU-2" ، "AHU-10". المشكلة هي ، بالنظر إلى تلك القيم المثال ، سيتم وضع AHU-10 بين AHU-1 و AHU-2. لقد وجدت أن إجبار "الرقم" لا يحل المشكلة.
إليك سؤالي: 1) هل يعرف أي شخص محللًا حاليًا يمكنني استخدامه في هذا الموقف؟ إذا لم يكن هناك واحد ، فسأحتاج إلى كتابة المحلل الخاص بي ، وفي هذه الحالة 2) كيف يجب أن أكتب المحلل؟ هل يجب أن أحاول ترجمة كل حرف إلى رقم والقيام برسم رقمي؟ هذا هو فكرتي الأولية.
شيء آخر ، لا أعرف على وجه اليقين أن الواصلة ستكون المحدد. يمكن أن تكون "Ahu-1" أيضًا "Ahu1" أو "Ahu 1" أو "Ahu: 1" ، أو أي شيء آخر.
المحلول
تحتاج إلى كتابة المحلل الخاص بك. ما تبحث عنه يسمى "النوع الطبيعي".
نصائح أخرى
على افتراض أن كل ما عليك القيام به هو فرز أي سلسلة من النمط AAA-1 كما AAA-01 يمكنك القيام بما يلي:
var myTextExtraction = function(node)
{
// extract data from markup and return it
return node.childNodes[0].childNodes[0].innerHTML
.replace(/([A-Z]{3}-)(\d)/,'$1-0$2');
}
$(document).ready(function()
{
$("#myTable").tableSorter( {textExtraction: myTextExtraction} );
}
);