2013-05-02 60 views
0

通过下面是函数如何获得变量通过功能的JavaScript/jQuery的

function addCategory(category) { 
$('#category_choice').append($('#!the variable "category" has to go in here!')); 
$('#feed_submit_categories').hide(); 
} 

的“类别”变量发送带有被附加的元素的ID。我如何将“类别”var插入到函数中?在PHP中,使用$ var_name标签要容易得多......但在这里,我不知道如何包含它。

+1

你要找的字符串连接。 – SLaks 2013-05-02 18:06:30

回答

3
function addCategory(category) { 
    $('#category_choice').append($('#'+category)); 
    $('#feed_submit_categories').hide(); 
} 
级联的

简单实例(变量,字符串):

var h = "Hello"; 
var w = "World!"; 

alert(h+w);   // HelloWorld! 
alert(h+' '+w);   // Hello World! 
alert(h+' my dear '+w); // Hello my dear World! 

jQuery选择可以使用string字面上表示元件ID选择:

$('#element') 

这意味着你保持作为串你需要什么和你连接一个变量:

var elName = "element"; // string variable 
$('#'+ elName) // same as: $('#element') 

如果您需要在每次追加新的新鲜元素不喜欢:

$('#category_choice').append('<div id="'+category+'" />'); 

只要确保不重复的元素ID的ID必须为每个页面元素的独特。

+1

谢谢! *随机文本覆盖评论框中的最小字符* – 2013-05-02 18:10:44

+1

thanx a million!我这样做(但无法通过“类别”项目),但我决定只复制我想追加的div,但它开始消耗它们=) – 2013-05-02 18:28:02

+0

@KrisRimar欢迎您!快乐编码 – 2013-05-02 18:29:02

2
$('#category_choice').append($('#'+category)); 

jQuery选择器只是被评估的字符串,您可以根据基本的Javascript规则生成一个字符串。

例如:

var iAmString = "#"+category; 
$(iAmString) //<-- using string var as a selector 
+0

有没有办法制作我正在追加的div的副本?因为我使用PHP回显类别,并且每次运行此功能时,它都会带走分区... – 2013-05-02 18:22:42

2

使用

function addCategory(category) { 
    $('#category_choice').append($('#'+category)); 
    $('#feed_submit_categories').hide(); 
} 
+0

谢谢! *随机文本覆盖评论框中的最小字符* – 2013-05-02 18:11:24