0

次のコードを使用して、動的なphpメニューをテーブルセルに追加しています。

$("input:radio[id='l1_allowed_0']").click(function() {  

$(".l1_p1_action").append('<select name="pathway_actions[]" id="pathway_actions">' );

$.getJSON('../scripts/get_pathway_actions.php', function (json) {
$("#pathway_actions").empty();
$.each(json, function () {
$("#pathway_actions").append(new Option(this.action));
});  
});
});

$( "。l1_p1_action")からメニューを削除するために何を使用しますか?

$("input:radio[id='l1_allowed_1']").click(function() {  


});

編集

一意のIDを持つメニューを作成するようにコードを変更しました。2つの問題:

削除は機能せず、ラジオボタンがクリックされるたびに新しいメニューが追加されます。

$("input:radio[id='l1_allowed_0']").click(function() {  

$(".l1_p2_actions").remove();
$(".l1_p3_actions").remove();
$(".l1_p4_actions").remove();

$(".l1_p1_action").append('<select name="l1_p1_actions" id="l1_p1_actions">' );

$.getJSON('../scripts/get_pathway_actions.php', function (json) {
$("#l1_p1_actions").empty();
$.each(json, function () {
$("#l1_p1_actions").append(new Option(this.action));
});  
});
});



$("input:radio[id='l1_allowed_1']").click(function() {  

$(".l1_p1_actions").remove();
$(".l1_p3_actions").remove();
$(".l1_p4_actions").remove();

$(".l1_p2_action").append('<select name="l1_p2_actions" id="l1_p2_actions">' );

$.getJSON('../scripts/get_pathway_actions.php', function (json) {
$("#l1_p2_actions").empty();
$.each(json, function () {
$("#l1_p2_actions").append(new Option(this.action));
});  
});
});

ああ、削除行のセレクターが間違っています...次のように変更され、削除が機能するようになりました。

$("#l1_p2_actions").remove();
$("#l1_p3_actions").remove();
$("#l1_p4_actions").remove();

ラジオボタンが複数回クリックされた場合、セルに余分な空のメニューが追加されるという問題がまだあります...

4

1 に答える 1

1

IDはページ上で一意である必要があるため、remove関数を使用して、削除する要素のIDを指定するだけです。

$("input:radio[id='l1_allowed_1']").click(function() {
    $("#pathway_actions").remove();
});
于 2013-03-01T02:14:16.333 に答える