0

したがって、Div内にSpanタグのグループがあり、選択に基づいて非表示を表示します。例えば:

<select id="country" >
<option value="please select"> Please Select </option>
<option value="us"> US </option>
<option value="uk"> UK </option>

<div id=span-group> <span class="uk">$5.00</span <span class="uk">25 Pounds</span> </div>

これらのタグを表示および非表示にするスクリプトは正常に機能します...しかし、フォームプロセスの後半で、「span-group」で非表示にされた値を再利用する必要があります。例えば:

<span id="reuse">It looks like you would like to spend **<span *set the text here to match  the unhidden span tag in "span-group"*> </span>**

私のselectグループには「span-group」に数十のオプションと潜在的な値があるため、javascript/jqueryを介してこれを行う方法があればこれは素晴らしいことです。何か案は?

4

4 に答える 4

0
$("#reuse span").text($("#span-group span:visible").text());

複数の#span-group span要素があります。これは、それらすべてのテキストを連結したいだけだと仮定しています。

于 2013-01-21T16:32:20.907 に答える
0

Jquery 可視セレクターhttp://api.jquery.com/visible-selector/を使用してみることができます。

表示されるのは 1 つだけなので、必要な要素を返すために表示セレクターに頼ることができます。

于 2013-01-21T16:32:16.540 に答える
0

:visibleセレクターを使用して、表示されるスパン要素をフィルターできます。

$('#span-group').find('span:visible');

次にeach、選択した要素を反復処理するメソッドを使用できます。

var a = 0;
$('#span-group').find('span:visible').each(function(){
     a += parseInt($(this).text(), 10);
});

$('#reuse').text('...' + a);
于 2013-01-21T16:32:02.917 に答える
0

「再利用」テキストを「スパングループ」と同期させる例を次に示します。

<html>
<head>
    <script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.9.0/jquery.min.js"></script>     
</head>
<body>
    <select id="country">
        <option value="please select"> Please Select </option>
        <option value="us">US</option>
        <option value="uk">UK</option>
    </select>

    <div id="span-group">
        <span class="us">$5.00</span>
        <span class="uk">25 Pounds</span>
    </div>

    <span id="reuse">It looks like you would like to spend <span id="selectedCurrency"></span>

    <script type="text/javascript">                     

        $(function() {
            showSelectedCurrency();

            $('#country').change(function() {
                showSelectedCurrency();
            });             
        }); 

        function showSelectedCurrency() {
            var spanToShow = $('#span-group span.' + $('#country').val());
            $('#span-group span').hide();

            if(spanToShow.length > 0) {
                spanToShow.show();
                $('#selectedCurrency').text(spanToShow.text());
            }
        }
    </script>
    </script>
</body>

「スパングループ」と「再利用」を常に同期させたくないが、ある時点で「再利用」を更新したいだけの場合は、ベガ氏が提案したように :visible セレクターを使用できます-次のようなもの:

$('#selectedCurrency').text($('#span-group span:visible').text());
于 2013-01-21T16:40:50.560 に答える