0

我的jquery代码有这个问题。我需要它将一个jquery变量值连接到一个 html 属性href。然而,它不断返回[object%20Object]实际变量值的位置。

这是我的jQuery。

var searchValname = $("input#name"); 
var alink = $("a#name");
alink.click(function(){ 
    alink.attr("href","searchDBfiltered.php?type=hospitalnumber&val=" + searchValname);
});

预计将返回searchDBfiltered.php?type=hospitalnumber&val= (variable value)。它反而显示[object%20Object]. 请问有什么问题吗?我用谷歌搜索了这个没有帮助。

4

3 回答 3

2

这是因为您当前正尝试将实际的 #name 对象插入链接中,而您确实需要该值。

var searchValname = $("input#name").val();
于 2013-03-29T13:37:03.517 回答
1

jQuery 对象就是这样 - 对象。当您将一个对象连接到一个字符串时,toString()会调用一个隐式函数,除非另有定义,否则它将返回"[object Object]".

如果您尝试连接输入的值,您应该使用.val()

alink.attr("href","searchDBfiltered.php?type=hospitalnumber&val=" +
    searchValname.val());
//               ^^^^^^
于 2013-03-29T13:38:44.193 回答
0

尝试更新第一行:

var searchValname = $("input#name").val(); 
var alink = $("a#name");
alink.click(function(){ 
alink.attr("href","searchDBfiltered.php?type=hospitalnumber&val=" + searchValname);
});
于 2013-03-29T13:37:07.190 回答