मैं अपनी वेबसाइट के लिए एक बढ़िया रोलडाउन चयन समाधान पर काम कर रहा हूं।
मैंने एक <a name="iwanthereanid" class="popper">Click Here!</a>
लिंक बनाया है।
उस पर क्लिक करके मैं एक popup()
फ़ंक्शन को कॉल करता हूं।
$(".popper").click(function() {
popup($(this));
});
popup()
फंक्शन में मैंने जांचा कि क्या यह पहले से ही खुला हुआ है? नहीं?
आइए एक डिव बनाते हैं और इसे fillwiththings()
द्वारा चीजों से भरते हैं।
function popup(where)
{
if (where.hasClass("on"))
{
where.removeClass("on");
where.next("div").remove();
}
else
{
where.addClass("on");
fillwiththings(where);
}
}
function selectclose(where)
{
var nameval = $(this).attr("name");
var textval = $(this).text();
where.attr("name", nameval);
where.text(textval);
where.removeClass("on");
where.next("div").remove();
}
function fillwiththings(where, id)
{
$container = $('<div class="popup"></div>')
for (i = 0; i < object.length; i++)
{
$container.append($('<a name="'+jsonobject[i]["id"]+'">'+jsonobject[i]["name"]+'</a>').bind("click", {where: where}, selectclose()));
}
}
fillwiththings()
में मैं संलग्न <a></a>
के साथ एक अन्य फ़ंक्शन को जहां पैरामीटर के साथ बंद करना चाहता हूं, बंद करना चाहता हूं, और ए (यहां क्लिक करें!) टैग के टेक्स्ट और नाम मान को प्रतिस्थापित करना चाहता हूं। लेकिन बंधन विफल रहता है। मुझे क्या याद आया? कृपया इसमें मदद करें।
धन्यवाद।
1 उत्तर
आप where
पैरामीटर को सही तरीके से एक्सेस नहीं कर रहे हैं। ईवेंट डेटा को ईवेंट हैंडलर के पैरामीटर के रूप में पास नहीं किया जाता है, यह ईवेंट ऑब्जेक्ट की एक संपत्ति है:
function selectclose(event) {
event.data.where
.attr("name", $(this).attr("name"))
.text($(this).text())
.removeClass("on")
.next("div").remove();
}
दूसरी समस्या यह है कि आप बाइंड करने के लिए selectclose()
का वापसी मूल्य पास करते हैं। आपको फ़ंक्शन को सीधे पास करना होगा:
$container.append($(...).bind("click", {where: where}, selectclose));
// no parenthesis ------^
संबंधित सवाल
नए सवाल
jquery
jQuery एक जावास्क्रिप्ट लाइब्रेरी है, जावास्क्रिप्ट टैग को जोड़ने पर भी विचार करें। jQuery एक लोकप्रिय क्रॉस-ब्राउज़र जावास्क्रिप्ट लाइब्रेरी है, जो दस्तावेज़ ऑब्जेक्ट मॉडल (DOM) ट्रैवर्सल, इवेंट हैंडलिंग, एनिमेशन और AJAX इंटरैक्शन को ब्राउज़रों की विसंगतियों को कम करके सुविधाजनक बनाता है। JQuery से संबंधित एक प्रश्न jQuery से संबंधित होना चाहिए, इसलिए jQuery को प्रश्न में कोड द्वारा उपयोग किया जाना चाहिए और कम से कम jQuery के उपयोग से संबंधित तत्वों को प्रश्न में होना चाहिए।