मेरे पास jstree प्लगइन है मैं बस इस प्लगइन को चयनित नोड द्वारा भरता हूं और नोड-चयन विधि में AJAX के साथ डेटा पोस्ट करता हूं। Althouh मैं "letChangeTrig" के साथ एक नियंत्रण कर इसे खुद onChamge विधि कॉल रिकर्सिवली की वजह से मैं पेड़ refrest .. लेकिन मैं जब उपयोगकर्ता का चयन केवल इस कॉल करना चाहते हैं ..बंद करें jquery चालू करें पुनर्नवीनीकरण पुनरावृत्ति
$('#tree_2').jstree({
}).on('changed.jstree', function (e, datap) {
debugger
if(!letChangeTrig)
{
letChangeTrig = true;
return;
}
$.ajax({
url: "../../Controller/ActiveDirectoryController.php5",
type: "POST",
dataType: "json",
data: params,
success: function (result) {
treeData_ = prepareObjectsforTree(result.Objects);
resfreshJSTree(treeData_);
},
error: function (a, b, c) {
}
});
});
ताज़ा:
function resfreshJSTree(treeDataa) {
letChangeTrig = false;
$('#tree_2').jstree(true).settings.core.data = treeDataa;
$('#tree_2').jstree(true).refresh();
}
और यह मेरा जेएसटी रीफ्रेश फ़ंक्शन है जो ऑन चेंज विधि को ट्रिगर करता है .. और डेटा पोस्ट करता है .. सफलता के बाद प्रतिक्रिया के बाद मैं इसे फिर से बदलकर डेटा के साथ पेड़ को पुनर्निर्मित करने के लिए कहता हूं लेकिन इस तरह से यह बिना किसी उपयोगकर्ता के evet का चयन करता है लूप में गिरें .. मुझे इसे तार्किक नियंत्रण से रोकना होगा
आपका ईवेंट ऑब्जेक्ट ई कॉलबैक फ़ंक्शन में पास किया गया है। E.stopPropagation() – user888734
आज़माएं ठीक है अब मैं देखता हूं, धन्यवाद –