日期:2014-05-16  浏览次数:20747 次

php,ajax一个表单根据用户的选择和输入,自动计算价格?? - Web 开发 / Ajax
如图,一个酒店在线订房的表单(bookForm.php).要球输入入住天数,房型和房间数信息。最后一个是计算出价格。附上房间表(room)结构的截图,这里用到的是rType和rPrice这两个字段.。
房型的下拉菜单选项是从数据库中读取出来的.因为要计算价格,就需要根据下拉菜单里选中的值去数据库中读取出对应的价格。我用js获取到了所选中的值(str).接下来要做的就是把str传到php里面写道sql语句中的where条件里面来读取出价格。但是,搜索了一下,这个传递好像无法实现?? 还有其他字段的输入值如何存储到php变量中,以用来计算价格??
如果是表单提交后再生成价格应该是简单的。但是这里价格要在当前页面即时显示.而且表单的action不能为当前页面,因为表单要提交到生成订单页面.(book.php).
得到的思路是用ajax. 但这个了解的少。请给些代码哦.


------解决方案--------------------
JScript code

//这是一个用ajax提交数据的函数
//url是后台接收数据的页面,比如bookForm.php
//data是要传递的数据,格式是day=3&type=2&room=2
//callback是处理服务器返回数据的函数
function postData(url, data, callback) {
    var request = new XMLHttpRequest();            
    request.open("POST", url);                    // POST to the specified url
    request.onreadystatechange = function() {     // Simple event handler
        if (request.readyState === 4 && callback) // When response is complete
            callback(request);                    // call the callback.
    };
    request.setRequestHeader("Content-Type",      // Set Content-Type
                             "application/x-www-form-urlencoded");
    request.send(encodeFormData(data));           // Send form-encoded data
}