在文本单击上显示图像名称

时间:2017-07-03 20:41:45

标签: jquery

你好我想在文本点击时显示图像名称而不为p标签元素创建多个id。提前谢谢。



$('img').click(function()
{
 var test = $(this).attr('src').split("/").pop();
 document.getElementById("result").value= test;
});

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="row">
    <div>
     <img src="1.png">
     <div>
     <p>click<p>
     </div>
    </div>
    <div>
     <img src="2.png">
     <div>
     <p>click</p>
     </div>
    </div>
    <div>
     <img src="3.png">
     <div>
     <p>click</p>
     </div>
    </div>
</div>
<form>
 <input type="text" id="result">
</form>
&#13;
&#13;
&#13;

1 个答案:

答案 0 :(得分:0)

你可以这样做:

&#13;
&#13;
$('.row p').click(function() {
  //simple version
  var text = $(this).parent().prev().attr('src').split("/").pop();
  
  //a more generic version would be
  //var text = $(this).parent().parent().find('img').attr('src').split("/").pop();
  
  $("#result").val(text);
});
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="row">
  <div>
    <img src="1.png">
    <div>
      <p>click</p>
    </div>
  </div>
  <div>
    <img src="2.png">
    <div>
      <p>click</p>
    </div>
  </div>
  <div>
    <img src="3.png">
    <div>
      <p>click</p>
    </div>
  </div>
</div>
<form>
  <input type="text" id="result">
</form>
&#13;
&#13;
&#13;

另请注意,您的第一个<p>click<p>代码未正确关闭,且应为<p>click</p>

相关问题