Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/463.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
为什么(+;)是用Javascript表示的?_Javascript - Fatal编程技术网

为什么(+;)是用Javascript表示的?

为什么(+;)是用Javascript表示的?,javascript,Javascript,我的代码: var total_quantity = parseInt(0); var total_price = parseFloat(0); $('#ticket_list').each(function () { total_quantity += parseInt($(this).find('li .ticket_quantity option:selected').text()); total_price += parseFloat($(this).find('li .

我的代码:

var total_quantity = parseInt(0);
var total_price = parseFloat(0);
$('#ticket_list').each(function () {
    total_quantity += parseInt($(this).find('li .ticket_quantity option:selected').text());
    total_price += parseFloat($(this).find('li .ticket_price').attr('data-val'));
});
console.log(total_quantity, total_price);
当票数为
3
4
时,它给出
34

为什么?我做错了什么?
票价一样

我的html代码:

<ul class="list-unstyled" id="ticket_list">
<li class="ticket_box">
    <div class="pull-right" style="width:70px">
        <div class="form-group">
            <select
                class="form-control ticket_quantity"
                id=""
                name="count_1"
                onchange="theEvent.calcTickets();">
                <option value="0">0</option>
                <option value="1">1</option>
                <option value="2">2</option>
                <option value="3">3</option>
                <option value="4">4</option>
                <option value="5">5</option>
                <option value="6">6</option>
                <option value="7">7</option>
                <option value="8">8</option>
                <option value="9">9</option>
            </select>
        </div>
    </div>
    <div style="width:calc(100% - 100px)">
        <h4 class="ticket_name">free1</h4>
        <span class="ticket_price" data-val="0">БЕСПЛАТНЫЙ</span>
    </div>
    <div class="clearfix"></div>
</li>
<li class="ticket_box">
    <div class="pull-right" style="width:70px">
        <div class="form-group">
            <select
                class="form-control ticket_quantity"
                id=""
                name="count_2"
                onchange="theEvent.calcTickets();">
                <option value="0">0</option>
                <option value="1">1</option>
                <option value="2">2</option>
                <option value="3">3</option>
                <option value="4">4</option>
                <option value="5">5</option>
                <option value="6">6</option>
                <option value="7">7</option>
                <option value="8">8</option>
                <option value="9">9</option>
            </select>
        </div>
    </div>
    <div style="width:calc(100% - 100px)">
        <h4 class="ticket_name">Общий доступ 10</h4>
        <span class="ticket_price" data-val="11">11 сомони</span>
    </div>
    <div class="clearfix"></div>
</li>
  • 0 1. 2. 3. 4. 5. 6. 7. 8. 9 免费1 БЕСПЛАТНЫЙ
  • 0 1. 2. 3. 4. 5. 6. 7. 8. 9 Общий доступ 10 11 сомони

您使用
每个
函数迭代错误的内容

而不是
$(“#票务列表”)。每个(…

你应该使用
$('#票务列表li')。每个(…


然后从内部
查找
s中删除
li

根据我的理解,您为两个选择框指定了相同的类名,即“ticket\u quantity”,我认为您必须将“ticket\u price”名称设置为第二个选择框。

您能在stacksnippet中重现这个问题吗?当您的输入是字符串时,会发生连接。@Pr阿纳夫巴拉,我不用stacksnippet@ShuhratjonJumaev请在一个代码段中重现此问题。这样就可以很容易地进行研究。@ShuhratjonJumaev请定义变量,如
var total\u quantity=0;