javascript - javascript onclick 设置段落/文本框值

  显示原文与译文双语对照的内容

我有无序的链接列表,我正在尝试得到点击的链接文本。 所以当我点击一些链接,我想在我的列表文本底部的段落或者文本框中显示。 所以如果我有这样的东西:

  • item1
  • item2
  • 指派

如果我点击 item2,我想得到它: clicked:item2 你只是"

我可以用这个来管理:


jQuery(function () {


 $('a').click(function () {


 alert('Text is: ' + $(this).text());


 });


});



但这显示了一条警告信息。 然后我这样做:


jQuery(function () {


 $('a').click(function () {


 var name = $(this).text();


 $("p#selector").text(name); 


 $("input#textbox").val(name);


 });


});



它发送一个链接的文本价值,但消失很快,它显示了一切,有什么方法阻止它。 阻止它消失?

时间: 原作者:

尝试这个:


jQuery(function () {


 $('a').click(function (e) {


 e.preventDefault();


 var name = $(this).text();


 $("#selector").text(name); 


 $("#textbox").val(name);


 });


});



e.preventDefault() 将阻止链接进行默认( 这听起来像是刷新页面。) 执行的任何操作。

这里的收费是一个演示

我还修改了你的选择器- p#selector 是低效的,你应该简单地在in中使用 #selector,如 jQuery API 。

对于id选择器,jQuery使用了非常高效的JavaScript函数 document.getElementById(), 。 如果另一个选择器附加到选择器,如 h2#pageTitle,则jQuery在标识元素之前执行它的他检查。

EDIT:,因为点击处理程序并不是你这里需要的,尝试这个解决方案:

通过解析URL解析当前页面使用 jQuery URL分析器,然后找到与URL对应的链接,并获取文本:


var url ="one.htm";


var linktext = $("a[href='" + url +"']").text();


$('#output').text(linktext);



这位的工作演示 ( 只需做URL解析,而不是手动设置 URL ) 。

...