- Java 双重比较
- java - 比较器与 Apache BeanComparator
- Objective-C 完成 block 导致额外的方法调用?
- database - RESTful URI 是否应该公开数据库主键?
我有在线酒店预订系统脚本,其中房价和房间类型是使用 php 从数据库中提取的。我在这个系统中只有 2 个房间。一间最多可容纳 4 人,另一间最多可容纳 6 人。预订表格有From和To日期,房间类型(x套房),可以从0到1中选择,后面是价格x 120 每房每晚。我还可以选择人数。固定价格为每间客房每晚 120 美元,最多可入住 2 人。每增加一个人,价格就会增加 20。所以如果套房里有 3 个人,价格就是 140。我试着自己搞定,但我就是不能根据所选的人数来改变价格。people的select标签代码如下:
<select name="people" class="FormFields" onChange="checkBookingForm()" style="width:70px">
<?php for ($i=1; $i<=$SETTINGS["room_people"]; $i++) {
if ($i==$_REQUEST["people"]) {
$selected='selected';
}
else {
$selected='';
}
?>
<option value="<?php echo $i; ?>" <?php echo $selected; ?>><?php echo $i; ?></option>
<?php }; ?>
</select>
函数 checkBookingForm() 处理选定特定房间时的文本更改,它将显示该房间可容纳的人数。函数在这里:
<script language="javascript" type="text/javascript">
函数 checkBookingForm() { var allRooms=new Array(); var totalPeople = 0;
for(i=0; i<document.NewBookingFrm.elements.length; i++) {
if(document.NewBookingFrm.elements[i].type=="select-one") {
name_t = document.NewBookingFrm.elements[i].name;
if (name_t!=='people') {
value_t = document.NewBookingFrm.elements[i].value;
totalPeople = parseInt(allRooms[name_t]) * parseInt(value_t) + totalPeople;
}
}
}
if (totalPeople==1) {
var acP = 'person';
} else {
var acP = 'people';
};
if (totalPeople!=document.NewBookingFrm.people.value) {
totalPeople = '<strong style="color:red; font-size:14px">'+totalPeople+'</strong>'
}
document.getElementById('PeopleAccommodate').innerHTML = 'selected room(s) can accommodate ' + totalPeople + ' ' + acP;
我尝试过不同的方法,但由于我同时在学习 Javascript,所以我没有取得任何进展。我仍在努力了解 DOm 的工作原理。如果有人能给我指出正确的方向,我将不胜感激。我明白我必须用代码做什么:
对于可用房间的数量,我目前有这个代码:
<select name="room_<?php echo ReadFromDB($row["id"]); ?>" class="FormFields" onChange="checkBookingForm()" style="width:70px">
<option value="0">0</option>
<?php for ($i=1; $i<=$available_rooms; $i++) {
if ($i==$booked_rooms["quantity"]) $selected=' selected'; else $selected='';
?>
<option value="<?php echo $i; ?>"<?php echo $selected; ?>><?php echo $i; ?></option>
<?php }; ?>
</select>
x
">
更完整代码的链接:http://jsfiddle.net/x6ZYB/
最佳答案
好吧,你以一种不寻常的方式混合了 php 和 html也许你应该使用 heredoc 来获得更好的代码?
好吧,你不应该发布 PHP 代码有很多错误嗯,为什么不尝试使用 jquery 和 .value() 来获取单击输入时的输入值并使用 .html() 更改价格?
代码对我来说是一团糟你有这个的 html 输出作为例子吗?还有计算价格的 div?
关于php - 预订表格 :Price change on selecting different option from dropdown list - PHP and Javascript,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5981129/
我经常使用 var options = options || {} 作为默认为空对象的方式。它通常用于初始化选项对象,以防它未在函数调用的参数中传递。 问题是我在几个地方(博客文章、源代码)读到opt
我是Python中Rust的新手。这是我学习Rust的第四天。 在第一个问题Type casting for Option type之后,我有一个跟语法match和所有权概念有关的后续问题。 首先,我
我正在学习 Ray Wenderlich。我遇到了闭包语法错误。我想知道 Xcode 提示是什么意思? Xcode 报告如下: /Users/.../FlickrPhotosViewControlle
使用 Python 编写命令行界面 (CLI) 时 click library , 是否可以定义例如三个选项,其中仅当第一个(可选)未设置时才需要第二个和第三个选项? 我的用例是一个登录系统,它允许我
我有一个这样的 JPA 查询。 PersonRepository.java public Optional> findByStatus(int status); 人员服务.java System.ou
我遇到了很多地方,我有类似的东西 def f(s: String): Option[Long] = ... def g(l: Long): IO[Option[Wibble]] = ... val a
我有一个results: List[Future[Option[T]]]其中包含(并行)计算。 我想获得第一个非None尽快出结果,或者返回None如果所有计算都返回 None . 目前,我正在这样做
我正在尝试加载一个简单的 Listbox组件来自 @headlessui/react . 选择.tsx type Option = { id: number name: string
如何将Future[Option[Future[Option[X]]]]转换为Future[Option[X]]? 如果它是 TraversableOnce 而不是 Option 我会使用 Futur
Haskell、Rust 等语言提供了一个 Maybe 或 Option 类型。即使在 Java 中,也有一个 Optional 现在打字。 为简单起见,我将在剩下的问题中将此类型称为“选项类型”。
当我尝试在 SQL 中存储一个 XML 而不是一个空元素时,SQL 只是更改它并仅使用一个元素标签来存储它。例如,要存储的 XML 是: ROGER 然后Sql存起来就好了
使用这个非常好的命令行解析器 Argo(仅 header C++ 库)我遇到了一个小问题。请参阅:https://github.com/phforest/Argo Argo 返回:'Error: Un
我是来自 Java 背景的 Scala 新手,目前对考虑 Option[T] 的最佳实践感到困惑. 我觉得用 Option.map只是更实用和美观,但这不是说服其他人的好理由。有时, isEmpty
这个问题在这里已经有了答案: Chaining Optionals in Java 8 (9 个回答) Optional orElse Optional in Java (6 个回答) Functio
Optional::stream如果存在,则返回一个包含该值的 Stream,否则返回一个空流。所以对于 Stream> optionals , optionals.flatMap(Optional:
我使用箭头键作为输入,在 printf 菜单中上下移动 printf 箭头(“==>”)。 我正在使用一个函数来计算箭头应该在的位置,并使用 switch case 和 printf("\n==>")
这个问题在这里已经有了答案: What does the construct x = x || y mean? (12 个答案) 关闭 9 年前。 如我的问题标题所述,我最近偶然发现了这个变量声明:
这个问题在这里已经有了答案: BackboneJS: What is options || (options = {}); in Backbone source code (1 个回答) 关闭 8
我有这个简单的语法: word = Word(alphanums + '_') with_stmt = Suppress('with') + OneOrMore(Group(word('key') +
使用 Cucumber 和 SitePrism 编写测试,我在页面上有以下 HTML... Select a Status Active Product Inactive Prod
我是一名优秀的程序员,十分优秀!