这是我想要实现的,我在控制器中有一个生成随机密码并返回相同的功能,在按钮单击时我想捕获生成的密码并将其显示在视图中(密码字段)。这是jquery / ajax调用:
public function generate_password($length = 9)
{
return $password_str;
}
控制器功能:
RouteBase
这是调用控制器方法的正确方法吗?
为什么我在警报时会得到空白值,即使在php中打印时我得到了正确的值?
在管理区域可以说这是原因,不是这么认为的,但是因为代币有任何干扰吗?
答案 0 :(得分:1)
在大多数情况下,它可以正常工作,但是你可以使用json格式(只需json_encode / json_decode就可以完成这项工作),而不是通过GET方法和其他一些修改发送。 你确定网址是否正确,如果你在浏览器中打开它会发生什么?
答案 1 :(得分:0)
您必须echo
功能中的变量代替return
。因为return
会将值返回给调用者,而echo
会向浏览器发送内容。 JavaScript只会理解发送到浏览器的数据。因此,编辑您的功能代码如下:
public function generate_password($length = 9)
{
echo $password_str;
}
另一方面,你应该通过HTTPS而不是@rodamn提到的HTTP来做这件事
答案 2 :(得分:0)
很奇怪,但改变了网址:
url:“http://127.0.0.1/public/admin/content/manufacturers/generate_password”,
到此:
url:“generate_password”,
做了诀窍,现在一切正常:)
感谢大家的宝贵意见。