मैं jstree प्लगइन की तरह का उपयोग करके प्रत्येक आइटम की आईडी प्राप्त कर सकते हैं, लेकिन यह अच्छी तरह से प्रलेखित नहीं कर रहा है, न ही यह कहते हैं कि के अनुरूप बनाया गया है, प्लग इन का विकास jQuery ui मानकों। मैंने जो कुछ करने की कोशिश कर रहे हैं उसे पूरा करने के लिए मैंने 1.0rc2 का उपयोग किया है।
आपको जेस्ट्री को तुरंत चालू करने से पहले "लोड" ईवेंट को बांधना होगा, इसलिए मुझे लगता है कि यह "change_state" ईवेंट के साथ समान है। दूसरी बात यह है कि "change_state" चेक बॉक्स के कारण सिर्फ एक बदलाव से अधिक है। उदाहरण के लिए जब आप नोड का विस्तार करते हैं तो यह भी आग लग जाएगा (लेकिन किसी कारण से नहीं, तो पतन नहीं)। उस ने कहा, मैं चेकबॉक्स परिवर्तन से अवांछित घटनाओं को आजमाने और फ़िल्टर करने के लिए "change_state" हैंडलर में कुछ क्लोजी जांच कर रहा हूं। हैंडलर दोहन के लिए न्यूनतम कोड
$("#treeElement").bind("change_state.jstree", function (e, d) {
var tagName = d.args[0].tagName;
var refreshing = d.inst.data.core.refreshing;
if ((tagName == "A" || tagName == "INS") &&
(refreshing != true && refreshing != "undefined")) {
//if a checkbox or it's text was clicked,
//and this is not due to a refresh or initial load, run this code . . .
}
});
आपका क्लिक किया तत्व तो d.rslt
है और आप एक वस्तु उप नोड्स जाँच कर रहे हैं शामिल करने के कारण बस तत्व के लिए d.inst.get_checked()
के साथ की जाँच कर सकते हैं पाने के लिए आइटम क्लिक किया है, या d.inst.get_checked(d.rslt)
है। नोड्स को संसाधित करने के लिए jquery's .each फ़ंक्शन का उपयोग करें।
जो jstree प्लगइन आप उपयोग कर रहे हैं? – Vivek
@ विवेक शायद jquery.jstree। @ user529011 क्या आप अपने उपयोग के कोड का उदाहरण दे सकते हैं। शायद http://www.jsfiddle.net – Raynos
jquery jstree v.1.0-version – user529011