আইডি হিসাবে প্রতিটি লুপের ভার্স্যাটাসের জন্য জেএসটিএল ব্যবহার করুন


104

আমি জেএসটিএল থেকে প্রতিটি লুপের জন্য গণনাটি ব্যবহার করতে চাই, তবে আমার কোডটি কাজ করছে বলে মনে হচ্ছে না।

<c:forEach items="${loopableObject}" var="theObject" varStatus="theCount">
    <div id="divIDNo${theCount}">
    </div>
</c:forEach>

উত্পাদন করে

<div id="divIDNojavax.servlet.jsp.jstl.core.LoopTagSupport$1Status@5570e2" >

9
এখানে 'জাভাডোক' শ্রেণিটি রয়েছে: ডাউনলোড. oracle.com/javaee/6/api/javax/servlet/jsp/jstl/core/… এটি কী কী getter পদ্ধতি সরবরাহ করে তা দেখুন। হ্যাঁ, অন্যদের মধ্যে একটি আছে getIndex():)
বালাসসি

উত্তর:


259

ভেরিয়েবল সেট করে দেয় varStatusএকটি LoopTagStatusঅবজেক্ট, ইনট নয়। ব্যবহার করুন:

<div id="divIDNo${theCount.index}">

স্পষ্ট করা:

  • ${theCount.index}0আপনি beginগুণটি নির্ধারণ না করা পর্যন্ত গণনা শুরু করে
  • ${theCount.count} গণনা শুরু হয় 1

21
${theCount.count} সর্বদা 1. এ ${theCount.index}শুরু হয় আপনি যেটি beginবৈশিষ্ট্যটি সেট করেছেন তার থেকে শুরু হয়। উদাহরণস্বরূপ<c:forEach var="foo" items="${bar}" begin="5" varStatus="theCount">
vegemite4me

8

আপনি এইগুলির মধ্যে যে কোনওটি ব্যবহার করবেন:

জেএসটিএল সি: প্রতিটি ভার স্ট্যাটাস বৈশিষ্ট্য for

সম্পত্তি প্রাপ্তির বিবরণ

  • কারেন্ট গেটকন্টেন্ট () আইটেমটি (সংগ্রহ থেকে) বর্তমানের পুনরাবৃত্তির জন্য।

  • সূচক getIndex () বর্তমানের পুনরাবৃত্তির শূন্য-ভিত্তিক সূচক।

  • গণনা getCount () বর্তমানের রাউন্ডারের জন্য এক-ভিত্তিক গণনা

  • প্রথমটি প্রথম () পতাকাটি নির্দেশ করে যে বর্তমান রাউন্ডটি পুনরাবৃত্তির মধ্য দিয়ে প্রথম পাস কিনা
  • সর্বশেষতম সর্বশেষ () পতাকাটি নির্দেশ করে যে বর্তমান রাউন্ডটি পুনরাবৃত্তির মধ্য দিয়ে সর্বশেষ পাস কিনা

  • শুরু getBegin () সূচনা গুণকের মান

  • শেষ getEnd () শেষ বৈশিষ্ট্যের মান

  • পদক্ষেপ getStep () পদক্ষেপ বৈশিষ্ট্যের মান


4

আপনি এটি চেষ্টা করতে পারেন। অনুরূপ ফলাফল

 <c:forEach items="${loopableObject}" var="theObject" varStatus="theCount">
    <div id="divIDNo${theCount.count}"></div>
 </c:forEach>

1

এটি সত্যই আমাকে showDetailItemনীচের কোডটির জন্য গতিশীলভাবে আইডিগুলি তৈরি করতে সহায়তা করেছে ।

<af:forEach id="fe1" items="#{viewScope.bean.tranTypeList}" var="ttf" varStatus="ttfVs" > 
<af:showDetailItem  id ="divIDNo${ttfVs.count}" text="#{ttf.trandef}"......>

যদি আপনি এই লাইনটি কার্যকর করেন <af:outputText value="#{ttfVs}"/>তবে নীচেরটি মুদ্রণ করা হয়:

{সূচক = 3, গণনা = 4, শেষ = মিথ্যা, প্রথম = মিথ্যা, শেষ = 8, পদক্ষেপ = 1, শুরু = 0}


@ হেনরিকিটার এখানে একটি বাস্তব উত্তর আছে। খারাপ ফর্ম্যাটিংয়ে আমি ঠিক করেছি যতক্ষণ না সমস্ত html লুকানো ছিল।
ড্যান ইজ ফিডলিং ফায়ারলাইট

এটি ঠিক একই উত্তরটি সরবরাহ করে যা ইতিমধ্যে 3 বছর আগে (ব্যবহার varStatus.count) সরবরাহ করা হয়েছিল, কেবলমাত্র খুব কম পাঠযোগ্য। কেন অন্য লোকের উত্তর পড়তে বিরক্ত করবেন? ;)
রাস্টিক্স
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.