سؤال

هل من الممكن تعيين أ <a href />حول بلدي <f:selectItem itemLabel="label" /> حيث نص الرابط الخاص بي هو itemLabel?

أنا أستخدم مكونات الشمس العادية.

هل كانت مفيدة؟

المحلول

النتيجة المرجوة هي ليس ممكن في HTML. ستحتاج إلى إضافة لقطة من JavaScript لهذا.

<h:selectOneMenu onchange="window.location=this.options[this.selectedIndex].value">
    <f:selectItems value="#{bean.links}" />
<h:selectOneMenu>

أين bean.getLinks() إرجاع أ List<SelectItem> مع عنوان URL جدير بالاهتمام كعنصر القيمة. إذا كنت تريد إظهار الرابط كما على حد سواء القيمة والتسمية ، فقط استخدم SelectItem مُنشئ أخذ حجة واحدة.

links = new List<SelectItem>();
links.add(new SelectItem("http://google.com"));
links.add(new SelectItem("http://stackoverflow.com"));
// ...

إذا كنت تريد أن ترمز لهم في العرض ، فيمكنك بالطبع الاستيلاء f:selectItem:

<h:selectOneMenu onchange="window.location=this.options[this.selectedIndex].value">
    <f:selectItem itemValue="http://google.com" />
    <f:selectItem itemValue="http://stackoverflow.com" />
<h:selectOneMenu>
مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top