এক্সএসএল-তে একটি স্ট্রিং কীভাবে সংযুক্ত করতে হবে: মান-নির্বাচন = "…?


94
<a>
    <xsl:attribute name="href"> 
     <xsl:value-of select="/*/properties/property[@name='report']/@value" />
    </xsl:attribute>
</a>    

অন্য স্ট্রিং এ ক্যানক্যাট করার কোনও উপায় আছে কি?

<xsl:value-of select="/*/properties/property[@name='report']/@value"  />

প্রতিবেদনের সম্পত্তি মান ছাড়াও আমাকে href অ্যাট্রিবিউটে কিছু পাঠ্য পাস করতে হবে

উত্তর:


151

আপনি এখানে কনক্যাট নামে পরিচিত সংজ্ঞায়িত নামযুক্ত এক্সপথ ফাংশনটি ব্যবহার করতে পারেন

<a>
   <xsl:attribute name="href">
      <xsl:value-of select="concat('myText:', /*/properties/property[@name='report']/@value)" />
   </xsl:attribute>
</a>  

অবশ্যই এটি এখানে পাঠ্য হতে হবে না, এটি কোনও উপাদান বা বৈশিষ্ট্য নির্বাচন করতে অন্য এক্সপথ এক্সপ্রেশন হতে পারে। এবং কনক্যাট এক্সপ্রেশনটিতে আপনার কাছে প্রচুর যুক্তি থাকতে পারে।

মনে রাখবেন, আপনার অভিব্যক্তিটি সহজ করার জন্য আপনি এখানে অ্যাট্রিবিউট মান টেম্পলেটগুলি (কোঁকড়ানো ধনুর্বন্ধনী দ্বারা প্রতিনিধিত্ব করা) ব্যবহার করতে পারেন

<a href="{concat('myText:', /*/properties/property[@name='report']/@value)}"></a>

4
@ টিমসি: ভাল, তবে এখানে concat()ফাংশনটি প্রয়োজনীয় নয়।
দিমিত্রে নোভাচাভেভ

আমার কাছে নিম্নলিখিত ট্যাগ রয়েছে: <a title="" href="https://stackoverflow.com/page.cfm?id=425">Anders, John</a>এবং আমি এক্সএসএলটিতে একটি গোপন ক্ষেত্র তৈরি করতে চাই যা কেবল # আইডি নেয়। আমি কীভাবে এটি অর্জন করতে পারি?
সার্চফোরকনলজ

27

তিনটি উত্তর:

সাধারণ:

<img>
    <xsl:attribute name="src">
        <xsl:value-of select="//your/xquery/path"/>
        <xsl:value-of select="'vmLogo.gif'"/>
    </xsl:attribute>
</img>

'কনক্যাট' ব্যবহার করে:

<img>
    <xsl:attribute name="src">
        <xsl:value-of select="concat(//your/xquery/path,'vmLogo.gif')"/>                    
    </xsl:attribute>
</img>

@ টিমসির পরামর্শ অনুসারে অ্যাট্রিবিউট শর্টকাট

<img src="{concat(//your/xquery/path,'vmLogo.gif')}" />

4
দিমিত্রের দ্বারা উল্লিখিত হিসাবে, আপনার এখানে <img src="{//your/xpath}vmLogo.gif" />
কনক্টের


5

স্থিত পাঠ্য স্ট্রিংকে নির্বাচিত মানের সাথে সংযুক্ত করার সবচেয়ে সহজ উপায়টি হ'ল ব্যবহার করা উপাদান।

<a>
  <xsl:attribute name="href"> 
    <xsl:value-of select="/*/properties/property[@name='report']/@value" />
    <xsl:text>staticIconExample.png</xsl:text>
  </xsl:attribute>
</a>

1

সবচেয়ে সহজ পদ্ধতি

  <TD>
    <xsl:value-of select="concat(//author/first-name,' ',//author/last-name)"/>
  </TD>

যখন এক্সএমএল স্ট্রাকচার হয়

<title>The Confidence Man</title>
<author>
  <first-name>Herman</first-name>
  <last-name>Melville</last-name>
</author>
<price>11.99</price>

0

সর্বাধিক পঠনযোগ্য সমাধান নয়, তবে আপনি ফলাফলটি একটি মান-সমান থেকে সরল পাঠ্যের সাথে মিশ্রিত করতে পারেন:

<a>
  <xsl:attribute name="href"> 
    Text<xsl:value-of select="/*/properties/property[@name='report']/@value"/>Text
  </xsl:attribute>
</a>

4
এটিতে কিছু সমস্যা রয়েছে: এক্সএসএলটি নির্দেশাবলীর মধ্যে, সাদা স্পেস কেবল পাঠ্য নোডগুলি উপেক্ষা করা হবে; তবে এখন আপনার কাছে সাদা স্থান নেই কেবলমাত্র পাঠ্য নোড ( ' Text'), সাদা স্থান (এমনকি নতুন লাইন) আউটপুট হবে।
আলেজান্দ্রো
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.