jqueryプラグインtablesorterを使用していますが、私のグリッドがインラインエディションを使用していて、エディションがアクティブな場合、ユーザーが列を並べ替えることを禁止します。特定の条件が満たされていれば並べ替えをキャンセルします
特定の条件で並べ替えを禁止するにはどうすればよいですか?私はイベントsortStart
が助けになると思ったが、ソートを取り消す仕組みがない。
jqueryプラグインtablesorterを使用していますが、私のグリッドがインラインエディションを使用していて、エディションがアクティブな場合、ユーザーが列を並べ替えることを禁止します。特定の条件が満たされていれば並べ替えをキャンセルします
特定の条件で並べ替えを禁止するにはどうすればよいですか?私はイベントsortStart
が助けになると思ったが、ソートを取り消す仕組みがない。
あなたの問題に関する十分な情報がないと、インライン編集が進行中のときにtrueに設定されるフラグ変数(ブール値)を定義することが最も安全な方法であると言えるでしょう。編集が終了するとfalseに設定されます。次に、flag変数がtrueの場合、ソートイベントを再コードしてfalseを返すことができます。ここで
UPDATE
はソリューションです:http://tablesorter.com/docs/example-options-headers.html。この例のコードを使用して並べ替えを無効にすることができます。
と私はどのようにtablesorterプラグインでそれを行うことができましたか?これを行うメカニズムはありません。 – StackOverflower
私はその文書をチェックアウトさせてください...私がそれをしている間、簡単にそのイベントを変更できるかどうかを確認できます – Shomz
そこに、他の答えのコードがあります。 – Shomz
あなたが編集しているときは、true
にlocked
を設定します。
$(document).ready(function() {
$("table").tablesorter();
//assign the sortStart event
$("table").bind("sortStart",function() {
if(locked) return false;
});
});
私は分でこれをテストします。
falseを返すと、残念ながら並べ替えがキャンセルされません。それが私が試した最初のことでした – StackOverflower
falseを返そうとしましたか?これは、アクションをキャンセルするためのかなり標準です。 –
@ThinkingSites:はい、私は最初のシュートとしてそれを試みました – StackOverflower
はそれのための手伝いを持っていましたか? – naveen