-2

select を使用して、ユーザーに 2 つのオプションを提供しようとしています。1 つのオプションは所有者で、もう 1 つのオプションは非所有者です。彼らが所有者であるかどうかにかかわらず、私は彼らにさまざまな質問をすることができるようにしたい. そこに 1 ~ 10 の数字で回答を入力し、その回答に基づいてフィードバックを提供できるようにしたいと考えています。できれば、それを非常に明確にしようとします。1 つの質問と 2 つのオプション。それが選択されると、所有者または非所有者の質問が行われ、私が持っているものにフィドルが含まれていることが追加されます。私はいたるところにいて、気にしないでください。誰かが私にその作品を見せてくれたら、それは素晴らしいことです!!! その中の何かを変更して、それを機能させたいだけです。 http://jsfiddle.net/philyphil/CcVsz/11/

<select class="myOptions">
<option data-val="" selected>Pick an option</option>
<option data-val="owner">Owner</option>
<option data-val="not-owner">Not Owner</option>
</select>
4

2 に答える 2

0

合計を処理するには、jQuery を次のように変更することをお勧めします。

$('#butt').click(function () {

    /* this gets an array of the numbers contained within visible
       input elements */
    var nums = $('.list input:visible').map(function () {
        return parseInt(this.value, 10);
    }),
    // initialises the total variable:
        total = 0;
    /* iterates over the numbers contained within the array,
       adding them to the 'total' */
    for (var i = 0, len = nums.length; i < len; i++) {
        total += nums[i];
    }

    var msg = '';

    if (isNaN(total)) {
        msg = 'Input three numbers, please...';
    } else if (total < 30) {
        msg = "That's bad, should be higher...";
    } else if (total > 40) {
        msg = "That's bad, should be lower...";
    } else {
        msg = "You got it... Nice work.";
    }


    $('#output').text(msg);

});

また、id合計する要素を選択するために属性を使用せず、代わりにclass-namesを使用します。

<div class="list owner">
    <p>a</p>
    <input class="numbers" type="text" size="2" />
    <br/>
    <p>b</p>
    <input class="numbers" type="text" size="2" />
    <br/>
    <p>c</p>
    <input class="numbers" type="text" size="2" />
    <br/>
    <!-- questions for owners -->
</div>
<div class="list not-owner">
    <p>x</p>
    <input class="numbers" type="text" size="2" />
    <br/>
    <p>y</p>
    <input class="numbers" type="text" size="2" />
    <br/>
    <p>z</p>
    <input class="numbers" type="text" size="2" />
    <br/>
    <!-- questions for non-owners -->
</div>

JS フィドルのデモ

誰かが所有者であるか、所有者であると主張しているかどうかをテストするには:

var total = 0,
    isOwner = $.trim($('.myOptions option:selected').val()) === 'owner';
if (isOwner) {
    console.log("It's the owner");
}

上記の jQuery は、要素が値を持つselect要素に結合されています。option

<select class="myOptions">
    <option value="-1" data-val="" selected>Pick an option</option>
    <option value="owner" data-val="owner">Owner</option>
    <option value="not-owner" data-val="not-owner">Not Owner</option>
</select>

JS フィドルのデモ

参考文献:

于 2013-06-29T08:33:55.490 に答える