2

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

怎么做?提前致谢...

你能给我一个例子或相关链接吗?我对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 函数。需要帮助

4

2 回答 2

2

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

于 2012-08-17T06:21:14.593 回答
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();
}

您应该期待该操作的视图,因此进行正常的蛋糕处理,在控制器中获取数据,渲染视图,如果有错误将操作自动渲染设置为 false。

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

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

解决你的问题。

于 2012-08-19T01:38:42.757 回答