两个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. ASP.NET 之XML:要插入的节点出自不同的文档上下文

    异常详细信息:   System.ArgumentException:   要插入的节点出自不同的文档上下文. 产生状况:现在有两个xml文件,我想把这两个xml合并,在给xml节点插入一个子节点时出 ...

  2. 5V转3.3v电路

    方案一: MIC5205-3.3 输出电流150ma 输出电压3.3V 其中:CT24为钽电容: 方案二: AMS1117-3.3 输出电流800ma 输出电压:3.3V 输入电压:4.75~12v

  3. asp.net mvc5 配置自定义路径

    首先配置路由文件,默认页是第一个路由的配置: using System; using System.Collections.Generic; using System.Linq; using Syst ...

  4. Haskell示例

    i :: Int i = --add, sub :: Int -> Int -> Int add, sub :: (Num a) => a -> a -> a add a ...

  5. [iOS]delegate和protocol

    转自:http://haoxiang.org/2011/08/ios-delegate-and-protocol/ 今天上班和同事讨论工程怎么组织的时候涉及到这个话题.iOS开发上对delegate使 ...

  6. 第三篇:python函数

    1.python函数 函数是组织好的,可重复使用的,用来实现单一,或相关联功能的代码段. 函数能提高应用的模块性,和代码的重复利用率.你已经知道Python提供了许多内建函数,比如print().但你 ...

  7. CSS Sprites的概念、原理、适用范围和优缺点

    CSS Sprites概念 CSSSprites在国内很多人叫css精灵,是一种网页图片应用处理方式.它允许你将一个页面涉及到的所有零星图片都包含到一张大图中去,这样一来,当访问该页面时,载入的图片就 ...

  8. 0054 Spring MVC的@Controller和@RequestMapping注解

    @Controller注解 该注解用来指示一个类是一个控制器,在Spring的配置xml文件中开启注解扫描 <context:conponent-scan base-package=" ...

  9. 2017"百度之星"程序设计大赛 - 初赛(B) 度度熊的交易计划 最小费用最大流求最大费用

    /** 题目:度度熊的交易计划 链接:http://acm.hdu.edu.cn/showproblem.php?pid=6118 题意:度度熊参与了喵哈哈村的商业大会,但是这次商业大会遇到了一个难题 ...

  10. CI cookie 存放数组

      #ci cookie 由于不能存放数组,所有必须序列化之后在存入数组中 #定义数组 $cookie_array=array( 'shop_id'=>$gid, 'shop_name'=> ...