我正在使用ajax GET来接收一些html响应体。 一旦我得到了响应体,我就解析出了所需的字符串。 在我的例子中,所需的字符串是美国流行篮球队的名字。然后我将解析后的字符串存储在名为teamNames的字符串数组中。
因此,如果我打印出字符串数组teamNames,它将打印像=>这样的名字。热火,猛龙,步行者等。
现在我想使用一些ajax方法为teamNames数组中的所有字符串创建按钮名称。
以下是我的javascript。
<script>
$( document ).ready(function()
{
$("#log").click(function(){
$.ajax({
url: "http://1xx.1xx.0.1xx:8081/script.login",
type: "GET",
data: { 'page':'create_user', 'access':'user','username':'user', 'password':'user'},
dataType: "text",
success: function (html) {
//Prints the Response Body
console.log(html);
var teamNames = new Array();
var res = html.match(/insertNewChild(.*);/g);
for(var i =0;i<res.length;i++)
{
//Parse out names of the desired strings
var temp = res[i].split(',');
if(temp.length >= 3)
{
//Store the desired strings in an string array
teamNames[i] = (temp[2].replace('");','')).replace('"','');
}
}
for(var i = 0; i<teamNames.length; i++){
//this will print names of all the basketball teams (desired string)
alert(widgetNames[i]);
//create buttons using the printed string
}
}
});
});
})
</script>
在我的html代码中,我有一个名为item的div,它位于某个导航菜单中。
<div id="items">
<!-- Should be loaded using some ajax method -->
<a href="" data-theme="b" data-role="button">Raptors</a>
<a href="" data-theme="b" data-role="button">Heat</a>
<a href="" data-theme="b" data-role="button">Pacers</a>
<a href="" data-theme="b" data-role="button">Celtics</a>
<a href="" data-theme="b" data-role="button">Bulls</a>
<a href="" data-theme="b" data-role="button">Orlando</a>
<!-- Should load by default. -->
<a href="#page1" data-transition="fade" data-theme="b" data-icon="flat-cross" data-role="button">LOG OUT</a>
</div>
我希望能够使用ajax创建动态上面列出的按钮。因此,例如,如果我的teamNames数组包含猛禽队,那么我想在项目div中动态创建以下内容。 ==&GT;
<a href="" data-theme="b" data-role="button">Raptors</a>
请告知如何做到这一点?如果这是一个糟糕的问题,我再次道歉,因为我是一个js和html noob。我过去曾问过几个问题,得到了很多帮助,让我开始了。任何提示或提示都表示赞赏。
答案 0 :(得分:1)
您可以使用以下代码“
for(var i = 0; i<teamNames.length; i++){
$('#items').prepend('<a href="javascript:;" data-theme="b" data-role="button" >'+teamNames[i]+'</a>');
}
答案 1 :(得分:0)
我不会展示如何处理按钮,因为我不确定你要对它们做什么,但我会告诉你如何创建它们。
var buttons = new Array();
for(var i = 0; i < teamNames.length; i++){
//this will print names of all the basketball teams (desired string)
alert(widgetNames[i]);
//create buttons using the printed string
buttons[i] = $("<a href='#' data-theme='b' data-role='button'>" + widgetNames[i] + "</a>");
}
这应该为anchor
中的每个值填充一个按钮样式widgetNames
的数组。
答案 2 :(得分:0)
最短路
不需要循环!!
var buttonsHTML='<a href="#" data-theme="b" data-role="button">'+
teamNames.join('</a><a href="#" data-theme="b" data-role="button">')+
'</a>';
或
var
a='<a href="#" data-theme="b" data-role="button">',
b='</a>',
btns=a+teamNames.join(b+a)+b;
<强>演示强>
如果您有任何问题,请直接询问!