-1

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

首先我这样做:

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

现在,我有一个清单:

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

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

4

1 回答 1

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 是一个非常糟糕的主意。我展示的方法应该没问题,因为您知道onclick属性的结构。然而,一个更好的解决方案是让这些数据通过其他一些根本不涉及解析 HTML 的方法来访问。

于 2013-01-23T03:57:06.913 回答