如何将元素数组转换为字符串并使用javascript解析它们?

时间:2013-01-23 03:01:03

标签: javascript parsing

现在我有了一系列元素。我希望将它们转换为字符串数组并在onclick之后解析出信息。所以我想我有两个问题,第一个是如何将它们变成字符串第二个是如何使用正则表达式来解析它们?我可以自己编写正则表达式,但我想知道如何将它应用于javascript中的字符串。

首先我这样做了:

var array = $('a[onclick*="findCustomer"]');

现在,我有一个清单:

    <a href="javascript:void(0);" onclick="findCustomer('James Smith',808-371-   4984,"Hawaii")">James Smith</a>

所以我的问题是如何将其转换为字符串数组以及如何从中解析客户的姓名,电话号码和状态。

1 个答案:

答案 0 :(得分:0)

  

所以我的问题是如何把它变成一个字符串数组,以及如何解析客户的姓名,电话号码和状态。

首先获取所有 onclick 属性(因为您似乎想要使用jQuery,这可以使用$.map完成)

var array = $.map($('a[onclick*="findCustomer"]'), function (elm) {
    return elm.getAttribute('onclick');
}); // `array` is now an array of the _onclick_ attributes

然后解析属性,例如使用$.each

$.each(array, function (key, val) {
    var parts = val.slice(val.indexOf('(')+1, val.lastIndexOf(')')).split(',');
    // parts[0] is name, parts[1] is number, parts[2] is state
    // you'll need to trim quotes
});

尝试使用RegExp解析x / HTML为explained here是一个非常糟糕的主意。当您知道 onclick 属性的结构时,我显示的方法应该没问题。 然而,更好的解决方案是通过其他方法访问这些数据,而不涉及解析HTML。