我需要提取并分解为整数,然后将最后一个元素中的第二个与类“ .admin-product”一起存储在jQuery中。

该ID将类似于“ admin-42”,我需要将其存储为数字42。

存储的变量通过我的AJAX处理程序发送,并将在那里进行操作和使用。

这是我当前的代码:

$(document).on('click', '.create-btn', function() {

var data = {'id':$('.admin-product:last').attr('id'),
           'username':$('#ausername').val(),
           'email':$('#aemail').val(),
           'password':$('#apassword').val()};

ShowCreateLoadingScreen("Creating...");
AjaxHandler('library/ajax/ajax.admin-account-create.php', data, 'POST', true);

});


有任何想法吗?

编辑:

最好采用以下格式:ish:

$id = filter_input(INPUT_POST, 'id', FILTER_VALIDATE_INT);


编辑:

以下代码将数字存储为2。

{'id':$('。admin-product:nth-​​child(-n + 2)')。attr('id')。split(“-”)[1]

编辑:

我的标记是通过解析器生成的,它的代码在这里,基本上重写同一行的次数与数据库中仍然存在信息的次数相同。

if($stmt->num_rows > 0) {
    $stmt->bind_result($aId, $aUsername, $aPassword, $aEmail);
    while($stmt->fetch()) {
        $html .= file_get_contents(ROOT_LIB . 'html/admin-accounts/row-user.html');
        $rowNumber = $aId;

        $replace = array(
        'userHere'      => $aUsername,
        'emailHere'     => $aEmail,
        'passHere'  => ' ',
        'IdHere'    => $aId,
        'buttonDisplay' =>
        '<button type="button" data-id="'.$aId.'" name="edit" class="btn btn-info edit-product span6" title="Edit Account" value="Edit">Edit</button>
         <button type="button" data-id="'.$aId.'" name="delete" class="btn delete-btn btn-danger span6" title="Delete Account" value="Delete">Delete</button>'
    );

    $parser = new Parser($replace);
    $parser->ParseHtml($html);
}

最佳答案

听起来您感兴趣的是某些DOM元素的ID号。在这种情况下,“ ID号”是元素的HTML ID的后缀。因此,我要做的是构造一个上述ID编号的列表:

var idNums = $('.admin-product').toArray()
    .map(function(domElt){
        return Number(domElt.id.split('-')[1]);
    });


请注意,如果存在类admin-product的任何元素,但它们的ID格式均不正确,则会导致元素的值为NaN;如果需要,可以使用Array.prototype.filter删除那些内容。

然后可以很容易地获得倒数第二个(倒数第二个)ID(如果只有一个元素则很安全):

var penultimateIdNum = idNums.length>1 ? idNums[idNums.length-2] : null;


演示:http://jsfiddle.net/3SvxB/

09-30 13:34
查看更多