値によって評価される別の要素をこのステートメントに追加するにはどうすればよいですか?
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
}
});