سؤال

يجب أن أستخدم مسج لأول مرة ....

<a class="Tag Resource" href="http://localhost/" 
resource="http://localres/" property="prop">test</a>

لقد حاولت استخراج النص باستخدام var = $('a').find('Tag Resource').text(); و var = $('a').find('Tag Resource').html(); لكنه لا يعمل. أحتاج إلى "اختبار" كنص عادي.

هل بإمكان احد اخباري بكيفية عمل هذا؟

شكرا مقدما

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

المحلول

أعتقد أنك تبحث عن:

var t = $("a.Tag.Resource").text();

وهذا يعني العلامات التي لديها على حد سواء ال Tag و Resource الطبقات. طريقة البحث () هي البحث عن السكتة الدماغية للعناصر.

نصائح أخرى

ها أنت ذا (عرض حي):

$(document).ready(
  function (){ 
    alert(  $('a.Tag.Resource').html()  );  
});

مشكلتك إما أنك تريد فئة واحدة ولكنها استخدمت مساحة لذلك أصبح اثنان؛ أو أنه عند الإشارة إلى الفصول مع محدد جيس، تحتاج إلى بادئة لهم بفترة.

على أي حال، سوف يساعد الرمز أعلاه. إذا كنت حقا أردت فقط من فئة واحدة، فقم بتغييره إلى $('a.Tag-Resource')...

أعتقد أن المشكلة هي بناء جملة التعبير البحث عنه.

تحديث: في الواقع، أنت لا تريد أن تجد على الإطلاق، تريد مرشح. العثور على لن يحدد فقط أحفاد العناصر، بدلا من العناصر نفسها.

لقد اختبرت خط المثال أدناه.

من مثال هنا, ، يبدو أنك تريد

var text = $('a').filter('.Tag.Resource').text();
var text = "";
$("a").each(function(){
  text += $(this).html() + " " + $(this).attr("resource");
});
alert(text);

لا أعتقد أنه يمكنك الحصول على أسماء فئة مع مسافات في. قمت بإضافة 2 فصول "العلامة" و "مورد" إلى العلامة ولم يجد كل من البحث الخاص بك ذلك.

تذكر أن أسماء الطبقة يمكن تكرارها على الصفحة، وتشير المسافات إلى الطبقات المطبقة على عنصر. أنت غير مضمون بأن عنصر واحد سيكون له هذه الفئة، لذلك قد يعود .Text () النص مجتمعة من جميع العناصر المتطابقة.

$(".Tag.Resource").text();

حسنا، ليس لديك لاستخدام jquery ...

var text, links = document.links;
for (var i = 0; i < links.length; i++) {
   if (links[i].className == 'Tag Resource') {
      text = links[i].innerText;
      break;
   }
}
alert(text);
مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top