0

だから私はある種の問題を抱えています:私はタグからタグへの「情報」をその間のテキストを含めて削除する必要があります。

したがって、htmlのどこかに次のようになります。

<input type="radio" rel="1" value="Surname1" name="lastnames">Surname1<br>
<input type="radio" rel="2" value="Name2" name="lastnames">Name2<br>
<input type="radio" rel="3" value="lol" name="lastnames">lol<br>
<input type="radio" rel="4" value="lol2" name="lastnames">lol2<br>

そして例えば:

var current_id = $('input:checked:radio').attr('rel');
$.get('index.php?delete_by_id='+current_id);
$("input:radio[rel='"+current_id+"']").remove();

したがって、GET to phpが送信された後、無線リストから削除されたアイテムを削除する必要があります。入力はすべてOKですが、彼の隣の名前で問題が発生します...

PS。その状況はばかげていることは知っていますが、明日まで書き直す時間がありません(試験)

4

3 に答える 3

1

要素でラベルをラップしspanます。

<input type="radio" rel="1" value="Surname1" name="lastnames"><span>Surname1</span><br>
<input type="radio" rel="2" value="Name2" name="lastnames"><span>Name2</span><br>

次に、削除中に、次のスパンを取得し、それも削除します

var item=$('input:checked:radio');

var current_id = item.attr('rel');
$.get('index.php?delete_by_id='+current_id,function(data){
   item.remove();
   item.next("span").remove();
});

削除/更新機能の HttpPost 操作を維持することは、常に良い習慣です。そうしないと、ブラウザでこれらのクエリ文字列を使用してページを実行するだけで、アイテム ID を知っていれば、誰でもデータベースからレコードを削除できます。

于 2012-06-04T14:00:57.370 に答える
1

Not sure exactly what you are trying to do and/or why it is not working, but consider writing the code like this:

var $selected_radio = $('input:radio:checked'); // store element reference
$.get('index.php?delete_by_id=' + $selected_radio.attr('rel'), function() {
    // use a callback function to only remove if code succeeds
    $selected_radio.remove();
});

EDIT: Looking back I see you want to remove the input along with its label. You just need to fix your HTML to be what it actually should be:

<label>
    <input type="radio" rel="1" value="Surname1" name="lastnames"> Surname1
</label>

Which then makes the remove code in jQuery look like:

$selected_radio.closest('label').remove();
于 2012-06-04T14:01:56.270 に答える
0

私は通常、ラジオボタンに接続されているテキストを表示するために常にラベルを使用します。

<input id="radio1" type="radio" rel="1" value="Surname1" name="lastnames"><label for="radio1">Surname1</label><br>
<input id="radio2" type="radio" rel="2" value="Name2" name="lastnames"><label for="radio2>Name2</label><br>
<input id="radio3" type="radio" rel="3" value="lol" name="lastnames"><label for="radio3">lol</label><br>
<input id="radio4" type="radio" rel="4" value="lol2" name="lastnames"><label for="radio4">lol2</label><br>

次に、JavaScriptコードで次のように実行できます。

var current_rel = $('input:checked:radio').attr('rel'),
    current_id = $('input:checked:radio').attr('id');
$.get('index.php?delete_by_id='+current_rel);
$('#' + current_id + ', label[for="' + current_id + '"]).remove();
于 2012-06-04T14:07:15.387 に答える