CakePHP如何显示相关信息

时间:2012-08-17 06:05:00

标签: cakephp

我的订单表包括客户提交,当添加新订单时,从下拉列表中选择客户名称后,我希望同一页面显示客户的信息,例如,来自客户表的地址,电话号码

怎么办? 提前谢谢......

你能给我一个例子或相关链接吗?我对AJAX一无所知,不知道从哪里开始。

也许这个链接:http://www.w3schools.com/ajax/ajax_database.asp,但它使用的是php而不是cakephp ......

示例中的代码是:xmlhttp.open(“GET”,“ getuser.php?q =”+ str ,true); 我不知道如何将customer_id(q = str)传递给orderscontroller / getuser function.need help

2 个答案:

答案 0 :(得分:2)

您可以使用JsHelper来实现您提到的相同功能。请尽量尝试,并提供一些原始代码,以便同行可以帮助您做到这一点。

答案 1 :(得分:1)

您的代码应该是这样的

function showCustomer(str)
{
 var xmlhttp;
 if (str=="")
 {
   document.getElementById("divtoDisplayInfo").innerHTML="";
  return;
 }
if (window.XMLHttpRequest)
{// code for IE7+, Firefox, Chrome, Opera, Safari
  xmlhttp=new XMLHttpRequest();
}
else
{// code for IE6, IE5
  xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.onreadystatechange=function()
{
if (xmlhttp.readyState==4 && xmlhttp.status==200)
{
document.getElementById("divtoDisplayInfo").innerHTML=xmlhttp.responseText;
}
}
 xmlhttp.open("GET","/yoursite/controllername/action/str,true); //if you use redirect and windows environment
 xmlhttp.send();
}

您应该期望该操作的视图,以便进行正常的蛋糕处理,在控制器中获取数据,渲染视图,如果存在错误,则将操作autorender设置为false。

但我建议你下载Jquery添加到你的cakephp框架这个简单的行

$("divToDisplayInfo's_ID").load("Controllername/action") 

解决您的问题。