2015-09-29 36 views
-1

我试图做一个下拉菜单,改变按钮的href属性。 我是jQuery的新手,我一直在复制和粘贴代码而不理解它是如何工作的。jQuery如何从下拉菜单更改href属性?

这里是我的引擎收录: http://pastebin.com/53es3gLi

以下是完整版本: http://pastebin.com/trieK16d

有没有办法基础上,下拉菜单的结果改变#btnLink的href值?当我使用

$("#btnLink").attr("href", $('#Link'); 

它取代了我的[对象%20%对象]链接,但如果我有一个链接替换$(“#链接”),它的工作原理,但它是一个固定的链接。它独立于下拉菜单。

也可以有人帮助解释代码中的jquery位,我想知道如何使用它以及为什么使用它。在此先感谢

+0

你缺少一个右括号,你应该检索值:'$( “#btnLink”)ATTR;' – D4V1D

+0

。( “HREF”,$( '#链接')VAL())。 '$(“#btnLink”)。attr(“href”,$('#Link');'你错过了一个关闭''' – vol7ron

+0

$(“#btnLink”)。attr(“href”,$ '#LINK')VAL())。 – Omidam81

回答

1

你设置的jQuery对象,链接场的不是值上使用val()

$("#btnLink").attr("href", $('#Link').val()); 
+0

我试过这个,但按钮链接不变。 – WebApprentice

+0

请检查一下:http://jsfiddle.net/8pjt878s/您还应该将代码放入更改侦听器中。 – Orland

+0

检查完jsfiddle后,这个解决方案奏效了,非常感谢。我看到你把$(“btnLink”)放到$('#File')中。change(函数,现在我看它是有道理的。 – WebApprentice

2

尝试$("#btnLink").attr("href", $('#Link').val());

哦,我错过了你的问题的最后一部分:

  • $("#btnLink")是一样的说:“每一个DOM元素ID为‘#btnlink’这是。
  • $('#Link').val()我们如何在jQuery的选择的东西
  • .attr("href"指的元素,我们之前选择的属性的“href”指的是另一组DOM元素:“一切以#链接ID。在你的情况下,它指的是一个输入字段。
  • .val()返回所述输入字段内的值。
-2

$('#Link')返回一个jQuery对象,这就是为什么你得到字符串“[Object%20%Object]”作为href属性中设置的值。如果您想设置一个从另一个链接链接HREF HREF你可以尝试

$("#btnLink").attr("href", $('#Link').attr('href')); 
1

$('#Link')返回jQuery对象,并要设置值作为jQuery对象,其被胁迫的字符串,因此该值[Object %20% Object]。该文本框的值设置为href属性链接元素

$("#btnLink").attr("href", $('#Link').val()); 
//         ^^^^^^ 
+0

我实际上试图从文本框中获取href值。文本框显示链接正确,但我无法更改我的按钮链接到文本框中显示的内容。我希望我能正确解释这一点。 – WebApprentice

+0

@WebApprentice在问题中添加完整代码 – Tushar

+0

@WebApprentice为了达到这个目的,网址应该出现在文本框中 – Tushar