两个select选项,第一个选项可以选1-9之间的数字,第二个选项可以选0到9之间的数字,要满足成人和儿童的总和不大于9,且一个成人最多带两名儿童

<div>

     <span>成人:</span>
<select id="AdultNum">
<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> <span>儿童:</span>
<select id="ChildNum">
<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>

当大于9或儿童大于成人的2倍的时候出现提示文案

//儿童和成人总数不超过9,且1名成人至多带2名儿童

$('#AdultNum').change(function () {
var adultnum = $(this).val();
PassengerNum(adultnum, '#ChildNum');
}); $('#ChildNum').change(function () {
var childnum = $(this).val();
PassengerNum1(childnum, '#AdultNum');
}); var a_num = $('#AdultNum').val();
PassengerNum(a_num, '#ChildNum'); var c_num = $('#ChildNum').val();
PassengerNum(c_num, '#AdultNum'); function PassengerNum(num, id) {
$(id).change(function () {
var cnum = $(this).val();
var sum = parseInt(num) + parseInt(cnum);
var par = parseInt(num) * 2;
if (sum > 9) {
$('.psnum-waring').show();
$('.psnum-waring').html('乘客总数不多于9人');
} else if (cnum > par) {
$('.psnum-waring').show();
$('.psnum-waring').html('每名成人最多可携带2名儿童');
} else {
$('.psnum-waring').hide();
} });
} function PassengerNum1(num, id) {
$(id).change(function () {
var cnum = $(this).val();
var sum = parseInt(num) + parseInt(cnum);
var par = parseInt(cnum) * 2;
if (sum > 9) {
$('.psnum-waring').show();
$('.psnum-waring').html('乘客总数不多于9人');
} else if (num > par) {
$('.psnum-waring').show();
$('.psnum-waring').html('每名成人最多可携带2名儿童');
} else {
$('.psnum-waring').hide();
} });
}

这种写法太麻烦,优化js

var interTicketO = {}

interTicketO._PassengerNum=function(id1,id2) {
var adultNum = Number($(id1).val());
var childNum = Number($(id2).val());
var html1 = '<span class="icon-waring"></span>乘客总数(不含婴儿)多于9人。';
var html2 = '<span class="icon-waring"></span> 每名成人最多可携带2名儿童,暂不支持婴儿票在线预定。'; $('.psnum-waring').hide(); if ((adultNum + childNum) > 9) {
$('.psnum-waring').show();
$('.psnum-waring').html(html1);
return;
}
if ((adultNum * 2) < childNum) {
$('.psnum-waring').show();
$('.psnum-waring').html(html2);
}
}

动态获取selected的value值的更多相关文章

  1. IOS开发之动态获取模型的属性值

    #import "model.h" #import <objc/runtime.h> @implementation model +(instancetype)mode ...

  2. 安卓Android控件ListView获取item中EditText值

    可以明确,现在没有直接方法可以获得ListView中每一行EditText的值. 解决方案:重写BaseAdapter,然后自行获取ListView中每行输入的EditText值. 大概算法:重写Ba ...

  3. js中使用控件名和数组下标方式获取控件的值时失败

    在做界面展示时涉及到表单行项目的增加和删除时,我们一帮都使用js的脚本实现表单行的增加和删除,那么在进行表单的提交的时我们会再页面上进行提交数据的初步校验,进行数据的初步校验时,就要动态获取控件的值. ...

  4. Android控件ListView获取item中EditText值

    能够明白,如今没有直接方法能够获得ListView中每一行EditText的值. 解决方式:重写BaseAdapter,然后自行获取ListView中每行输入的EditText值. 大概算法:重写Ba ...

  5. Ajax 学习之动态获取,返回服务器的值

    <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding= ...

  6. c# winform动态生成控件与获取动态控件输入的值

    差不多有2年没有写winform程序,一直都是写bs.最近项目需要,又开始着手写一个小功能的winform程序,需要动态获取xml文件的节点个数,生成跟节点个数一样的textbox, 最后还要获取操作 ...

  7. WebDriver获取table的内容(通过动态获取Table单元格的TagName对其innerHTML值进行获取)

    import java.util.ArrayList;import java.util.Iterator;import java.util.LinkedHashMap;import java.util ...

  8. c# json转换成dynamic对象,然后在dynamic对象中动态获取指定字符串列表中的值

    using Newtonsoft.Json;using System;using System.Collections.Generic;using System.Linq;using System.T ...

  9. js获取不到动态添加的标签的值的解决方法

    遇到了js无法获得动态添加的标签的值,百度了一番,最后自己解决了问题,但是原理现在还不怎么明确. $("input[id='txtAttValue']").each(functio ...

随机推荐

  1. angularJS 状态样式绑定

    angularJS提供输入框不同状态下的样式绑定 输入框有4种状态 ng-model 指令可以为应用数据提供状态值(invalid, dirty, touched, error): <!DOCT ...

  2. XMind--用他来理清自己的思路

    背景 一图胜千言,多年以前阅读了<图谋职场>后,深刻体会了这一点.工作学习,有效利用各种图,事半功倍. 简介 XMIND不仅可以绘制思维导图,还能绘制鱼骨图.二维图.树形图.逻辑图.组织结 ...

  3. centos7 安装php 多线程pthreads

    第一步:yum源更新 yum update 第二步:下载php7源码 wget http://124.202.164.8/files/312100000A0BB72D/cn.php.net/distr ...

  4. 何为优秀的机器学习特征 zz

    提供好的特征是机器学习任务中最重要的工作,那么何为优秀的机器学习特征?以及如何高效地组合这些特征? 以二分类问题为例,好的特征具有很好的区分性.例如学习任务是区分两种不同类型的狗:灰猎犬(Greyho ...

  5. PHP+shell实现多线程的方法

    PHP+shell实现多线程的方法 这里介绍怎样借助shell脚本实现多线程. 先写个简单的php代码.这里为了让脚本运行时间更长.方便看效果,sleep一下.呵呵.先看下test.php的代码:ls ...

  6. excel批量加前后缀

    =A1 & “xxx" 似乎只能在新的列里面添加然后粘贴回去

  7. Excel累加上一行的数值

    默认一拖是每一行+1,现在想加任意: =A1+X 然后一拖就可以加X了.

  8. HTML5之语音识别实例

    HTML5之语音识别实例 代码 <input type="text"  x-webkit-speech id="d1" lang="zh-CN& ...

  9. hdu3879 Base Station 最大权闭合子图 边权有正有负

    /** 题目:hdu3879 Base Station 最大权闭合子图 边权有正有负 链接:http://acm.hdu.edu.cn/showproblem.php?pid=3879 题意:给出n个 ...

  10. html 简单的预缓存

    切图生成html,加鼠标响应,预缓存 <style> .d4{ width:190; height:170; background-image: url(images/未标题-1_09-1 ...