0

値によって評価される別の要素をこのステートメントに追加するにはどうすればよいですか?

if ($(this).val() == 1 && !$(this).data("priority1"))?

この新しい要素のセレクターとしてクラスを使用したいと思います (この特定のケースでは、class="complaint" で、値の 1 つが "Too_small" です)。

試してみました(括弧ありとなしの両方)

if ($('.complaint').val() === "Too_small" && $(this).val() == 1 && !$(this).data("priority1")) 

以下の関数と、動作例のフィドルを含めました http://jsfiddle.net/chayanyc/Dhaat/225/

var $priority1 = $(".priority1");
$(".features_rank1").change(function() {
    var name = $(this).data("name"); //get priority name
    if ($(this).val() == 1 && !$(this).data("priority1")) {
        //rank is 1, and not yet added to priority list
        $("<option>", {text:name, val:name}).appendTo($priority1);
        $(this).data("priority1", true); //flag as a priority item
    }
    if ($(this).data("priority1") && $(this).val() != 1) {
        //is in priority list, but now demoted
        $("option[value=" + name + "]", $priority1).remove();
        $(this).removeData("priority1"); //no longer a priority item
    }
});
4

1 に答える 1

1

試す:

$(".complaint select").val()

クラスselectの下のタグの値が必要です。.complaint

ただし、 のクラスを持つ要素が 2 つある.complaintため、どちらが必要かを判断する必要があります。

于 2012-11-20T18:49:50.050 に答える