0

そこで、jQuery が提供するアコーディオンを使用します。
アコーディオンの中に、いくつかの入力フィールドを入れました。
3行のアコーディオンがあるとしましょう(展開して閉じることができます)。
誰かが入力フィールドの 1 つに何か間違ったことを入力すると、行のヘッダーが「ここにエラーがあります!」のようなものに変わります。または何でも。
jQuery は、h3 にスパンを配置することで、これらの展開可能な行をアイコンで作成します。
次のようになります (構文を説明するために、ここでは自作の例を使用します!!):

<h3 id='some_id'>
    <span style='color:#FF0000;'>HELLO!</span>
    HEY!
</h3>

h3内のスパンも削除するため、ヘッダーを変更したい場合、
$("h3[id='some_id']").html('HI THERE!');
orを使用しても機能しません。 ただし、アイコンを表示するにはそこにとどまる必要があります。 私も試し ましたが、それはスパンのみを変更します....スパンのみを変更したくありません。 「HEY!」を変更するにはどうすればよいですか? こんにちは!スパンを削除しないだけですか?
$("h3[id='some_id']").text('HI THERE!');




$("h3[id='some_id']").children().html('HI THERE!');


これが複雑に書かれていないことを願っています。自分自身をうまく表現する方法がわかりません。
ごめん ;-)

編集: ここでは、 jsfiddle.net/aLWPJなどのフィドルを示します。

4

1 に答える 1

1

これを試して:

$(document).ready(function() {
    $(".accordion").accordion({
        collapsible: true,
        heightStyle: "content",
        active: false,
    });

    var spanHTML = $("h3#ui-accordion-1-header-0 span").clone().wrap('<p>').parent().html();
    $("h3#ui-accordion-1-header-0").html(spanHTML+'HI THERE!');
});

フィドル: http://jsfiddle.net/aLWPJ/1/

編集:コメントに応じて変更されました(再度)。

于 2013-08-27T13:16:15.630 に答える