任何人都可以分享如何实现这一点。我有一个逗号分隔div名称的变量。在AJAX请求之后,我必须隐藏从字符串解析的所有div。那么我如何解析字符串以获取单个div名称并隐藏它?
提前致谢
jQuery代码
var dragExternal = 'div1a,div1b,div2a,div2b';
$.ajax({
type: 'POST',
url: "index.html",
data: dragExternal,
processData: false,
success: function(data) {
alert("Success");
//Start of code to hide all the div's parsed from the string
$('#div1a').slideUp(90);
},
error: function(data) {
alert("Cannot Reach Server");
}
});
HTML代码
<div id="div1a">Item 1</div>
<div id="div1b">Item 2</div>
<div id="div2a">Item 3</div>
<div id="div2b">Item 4</div>
<div id="div3a">Item 5</div>
<div id="div3b">Item 6</div>
答案 0 :(得分:3)
首先,您必须从dragExternal
获取所有ID。使用string.split(',')
。
然后,您可以使用jQuery.each方法浏览每个项目。
var dragExternal = 'div1a,div1b,div2a,div2b';
$.each(dragExternal.split(','), function(i,item){
$("#" + item).hide();
});
示例:http://jsfiddle.net/jonathon/UMCrC/
虽然你甚至不需要$ .each(虽然知道用法很好) - 因为它们都只是字符串:
var dragExternal = 'div1a,div1b,div2a,div2b',
items = dragExternal.split(',')
for(var i=0;i<items.length;i++){
$("#" + item[i]).hide();
};
您使用id selector通过在div名称前添加#
前缀来获取每个div。