无法获取所点击链接的文字值

时间:2015-04-22 13:33:23

标签: jquery

我试图获取点击链接的文本值,但所有显示的内容都是 ID 值。

我在网上搜索并相信我使用的是正确的方法。我甚至尝试过使用" target.text"。

有人可以告诉我以下jsFiddle的错误吗?

HTML

<form name="form" id="form" action="" method="post">
    <input type="text" id="startdate">
    <input type="text" id="enddate">
    <input type="hidden" id="id" value="0">
    <input type="hidden" id="idText" value="">
    <button type="submit" value "change" name="change">Change</button>
    <br> <a href="1">PALPRD</a>

    <br> <a href="3">PALTST</a>

    <br> <a href="2">EYEBAL</a>

    <br>
    <br>
    <button type="submit" value "back" name="back">Back</button>
</form>

JS

$('a').click(function (event) {
    event.preventDefault();

    var url = $(this).attr('href');
    $("#id").val(url);

    var text = $(this).text();
    $("#idText").text();

    //var hv = $('#id').val();
    var hv2 = $('#idText').val();

    //alert(hv);
    alert(hv2);

    $('#form').submit();
    return false;
}); 

请随时编辑jsFiddle ...

Js Fiddle

4 个答案:

答案 0 :(得分:2)

你忘了在小提琴中加载jquery并需要更改

$(&#34;#idText&#34)VAL(文本);

&#13;
&#13;
 $('a').click(function(event) {
   event.preventDefault();

   var url = $(this).attr('href');
   $("#id").val(url);

   var text = $(this).text();
   $("#idText").val(text);


   $('#form').submit();
   return false;
 });
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<form name="form" id="form" action="" method="post">
  <input type="text" id="startdate">
  <input type="text" id="enddate">
  <input type="hidden" id="id" value="0">
  <input type="hidden" id="idText" value="">
  <button type="submit" value "change" name="change">Change</button>
  <br> <a href="1">PALPRD</a>

  <br> <a href="3">PALTST</a>

  <br> <a href="2">EYEBAL</a>

  <br>
  <br>
  <button type="submit" value "back" name="back">Back</button>
</form>
&#13;
&#13;
&#13;

这是你干净的fiddle

答案 1 :(得分:0)

这很容易:

http://jsfiddle.net/nn09jast/

您必须选择jQuery并删除脚本标记

像这样:

$('a').click(function (event) {
    event.preventDefault();
    alert($(this).html());
    return false;
}); 

答案 2 :(得分:0)

您需要在此行中进行一些更改:

var text = $(this).text();
$("#idText").val(text); // set text value to hidden field with val() instead of text()

由于隐藏的输入字段是表单级元素,因此可以使用.val()

确定其值

请参阅element参考了解更多详情

Demo

答案 3 :(得分:0)

一个小小的改动并且它有效:你想要,但没有,将text变量作为隐藏输入text()的{​​{1}}函数的参数,此外应该是#idText

val(text)