我试图获取用户单击“应用”的特定作业记录的.postingTitle
值。为此,我试图使用jobTitle = $('.applyButton').parents().find('.postingTitle').val();
来找到postingTitle
。
截至目前,我什么都没填。输出仅是我的全局变量jobTitle = '';
。有人知道为什么我的find
函数不起作用吗?
JS中注释掉的代码是我尝试过的其他方法。
JS
var jobTitle = '';
$('.applyButton').on('click', function (event) {
//jobTitle = $('.applyButton').siblings().find('.postingTitle').val();
jobTitle = $('.applyButton').parents().find('.postingTitle').val();
//jobTitle = $(this).closest('.postingTitle').val();
$('#jobTitle').html(jobTitle);
console.log(jobTitle);
});
的PHP
foreach ($career_rows as $career_row) {
$category = $career_row['category'];
$job_title = $career_row['job_title'];
$job_description = $career_row['job_description'];
$job_requirements = $career_row['job_requirements'];
$job_status = $career_row['active'];
echo '<div class="posting">';
echo '<div class="postingInner">';
echo '<span class="postingCategory hGc">'. $category .'</span>';
echo '<h3 class="postingTitle">'. $job_title .'</h3>';
echo '<p class="postingDescription dGsmall">'. $job_description .'</p>';
echo '<p class="dG bold jobRequirementsTitle">Requirements:</p>';
//echo '<ul class="jobRequirementList">'. $job_requirements .'</ul>';
echo '<ul class="jobRequirementList">'. join('</li><li class="dGsmall">',preg_split('/@@@/',$job_requirements)) .'</ul>';
echo '<div class="applyButtonWrap"><button class="buttonInv2 applyButton">Apply</button></div>';
echo '</div>';
echo '</div>';
}
最佳答案
.val()
仅适用于input
,select
,textarea
,甚至其他一些。如果要在另一个元素中获取文本,则可以使用.text()
,并且由于.postingTitle
是h3
,因此需要执行以下操作:
jobTitle = $(this).closest('.postingInner').find('.postingTitle').text();