मैं जानता हूँ कि यह था बहुत समय पहले पूछा गया था, लेकिन यह जवाब देने योग्य है क्योंकि मुझे Google में यह प्रश्न खुद को ढूंढने के दौरान मिला था। मैंने समाधान को समझ लिया ताकि मैं इसे साझा करने के लिए यहां वापस आ सकूं। दो साल और "दृश्यमान" अभी भी काम नहीं करता **, इसलिए मैंने बाध्यकारी "अगर" चेक किया। विकल्प तत्व के अंदर डेटा बाध्यकारी इसे छुपा लेकिन चयन योग्य बना दिया। नॉकआउट में कुछ भी कहा जाता है: "कंटेनरलेस कंट्रोल फ्लो सिंटैक्स"।
यह मेरे लिए काम करता है:
<!-- ko if: category.parent == 0 -->
<option data-bind="value: category.name, text: category.name"></option>
<!-- /ko -->
यह काम करता है क्योंकि छुपाता है अगर डोम। नॉकआउट वेबसाइट से:
यदि दृश्य बाध्यकारी के लिए एक समान भूमिका निभाता है। अंतर है, जिसमें दिखाई देने वाला, निहित मार्कअप हमेशा डीओएम में रहता है और में हमेशा डेटा-बाइंड विशेषता लागू होती है - दृश्यमान बाध्यकारी केवल कंटेनर तत्व की दृश्यता को टॉगल करने के लिए सीएसएस का उपयोग करता है। यदि बाध्यकारी, हालांकि, आपके डीओएम, में निहित मार्कअप को भौतिक रूप से जोड़ता या हटा देता है और अभिव्यक्ति सत्य होने पर केवल वंशजों को बाइंडिंग लागू करता है।
आप दस्तावेज में अधिक पढ़ सकते हैं: http://knockoutjs.com/documentation/if-binding.html
चेक विभिन्न विकल्पों यहाँ: http://jsfiddle.net/v8gyG/24/
** "दृश्यमान" क्रोम 27 और Firefox 21 में लेकिन क्रोम में एकाधिक चयन करें के साथ नहीं काम करता है।
<!-- ko if: -->
आईई 10 में और क्रोम में बहुविकल्पीय के साथ भी काम करता है।
स्रोत
2013-06-02 21:23:58