文本框的jQuery标题属性

文本框的jQuery标题属性,jquery,Jquery,我不熟悉jquery。我的应用程序中有一个链接列表。我想能够采取的标题属性的任何链接,并把它放在一个页面上的文本框时,链接被点击。这是我目前得到的,但不起作用: <p><a href="#" title="text I want to get">Link 1</a></p> <p><a href="#" title="more text I want to get">Link 2</a></p>

我不熟悉jquery。我的应用程序中有一个链接列表。我想能够采取的标题属性的任何链接,并把它放在一个页面上的文本框时,链接被点击。这是我目前得到的,但不起作用:

 <p><a href="#" title="text I want to get">Link 1</a></p>
 <p><a href="#" title="more text I want to get">Link 2</a></p>
 <p><input id="myTextBox" type="text">​</p>

$("a").attr("title").click(function () {
$('#myTextBox').attr($(this).attr());
});

$(“a”).attr(“title”)。单击(函数(){ $('#myTextBox').attr($(this.attr()); });

任何帮助都将不胜感激。谢谢

您有很多正确的关键字,但它们的连接并不完全正确。例如,
.attr()
getter是不可链接的

这将获取具有标题的所有链接,并向其添加单击处理程序:

$('a[title]').on('click', function(){ 
  $('#myTextBox').val( $(this).attr('title') );
  //                            ^^ this returns a string and passes it to .val()
});
单击时,文本框的值将替换为链接的标题属性的值

这可能有点冗长。如果您是新手,我建议您在开始时编写类似的内容,因为这样会使调试变得更容易。一旦您对jQuery的处理方式感到更舒适,那么更密集、链接的方法将更自然

$('a[title]').on('click', function(){ 
  var $link = $(this);
  var titleText = $link.attr('title');
  var $textbox = $('#myTextBox');
  $textbox.val(titleText);
});

我可以从某种程度上理解导致您产生此结果的逻辑,但我强烈建议您阅读和,以便更好地理解该做什么

这就是说,这应该对你有好处:

$('p').on('click', 'a', function(){
    var title = $(this).attr('title');
    $("#myTextBox").val( title );
});
一个解释,以便您了解这里发生的事情:

我没有使用
click()
,而是使用
on()
,这是委托事件,而不是将它们附加到特定事件。因此,如果它在任何
p
元素上检测到单击事件,并且只要该元素的目标是给定
p
元素中的
a
元素,它就会执行处理程序

然后,我们将单击链接的
title
属性的值分配给变量
title

然后我们只需将输入的
属性设置为所述title变量,瞧


祝你好运

您一定要阅读
attr
文档:
.attr('title')
返回一个字符串。字符串没有
。请单击
方法。不要只是把东西放在一起,阅读文档,看看例子。因为他是新来的,你应该注意到没有分号。当我还是新手的时候,我不明白这一点,如果人们告诉我这件事,肯定会有所帮助。另外,+1表示使用
on()
@Purmou的正确答案。我不完全确定你说的分号是什么意思。在本案中,这并不是故意遗漏的。你是说它应该以任何一种方式工作(应该)?不,我的意思是在
attr('title')
@Purmou之后没有分号,好的。我再加一张便条。谢谢我甚至没有注意到你没有把它放在最后…讽刺。但是,无论如何,它都会起作用的。