0

我正在从 JSON 返回的数据中动态构建单选按钮(recipeItem)。然后我将 recipeItem 附加到配方笼中。这部分工作完美。

我还向 vendorCage 添加了一个 div,以将供应商分配给 recipeItem。到现在为止还挺好。没有任何问题。

我有一个按钮,可以将供应商添加到所选配方的 vendorCage。这就是问题所在。我第一次选择 recipeItem 然后单击按钮时,它按预期工作。它将供应商添加到适当的 vendorCage。问题是每次之后,当我检查食谱时,它总是第一个食谱的价值。

所以我的问题是:我遇到这个问题是因为我正在动态创建这些,还是我只是错过了一些东西?

获取选中recipeItem的代码

var recipe = $('input:radio[name="recipe_item"]').val();

用于构建 recipeItems 的代码

var $recipeItemsCage = $('#recipe-items-cage');
$.each(response.data['items'], function (key, value) {
    var recipeItem = $("<label />", {
        html: $('<input />', {
            type: "radio",
            name: "recipe_item",
            class: "recipe-item",
            value: key
        })
    }).append(key + ' - ' + value);
    $recipeItemsCage.append($('<li></li>', {
        html: recipeItem
    }));
    // Add recipe item vendor cage
    $vendorCage.append(
    $('<div></div>', {
        id: 'recipe-vendors-cage-' + key
    }));
});
4

1 回答 1

1

解决方法是这样做:

var recipe = $('input:radio[name="recipe_item"]:checked').val();
于 2013-08-30T05:23:21.053 回答