Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/270.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何在angularjs中只调用一个ng模型_Javascript_Php_Angularjs_Angular_Angularjs Ng Model - Fatal编程技术网

Javascript 如何在angularjs中只调用一个ng模型

Javascript 如何在angularjs中只调用一个ng模型,javascript,php,angularjs,angular,angularjs-ng-model,Javascript,Php,Angularjs,Angular,Angularjs Ng Model,首先,我只想对我的困惑的问题说声抱歉。我真的不知道我的问题的正确标题是什么,因为我是angularjs的新手。顺便说一下,我正在使用angularjs制作一个webportal,我的webportal的功能之一就是发布反馈和回复反馈!当网站访问者发布反馈时,管理员将对其进行审查并对该反馈进行评论。例如,已经有10篇文章了,所以我使用mysql查询来显示它。像这样: $query = "SELECT * FROM tblfb WHERE fb_status = 1 ORDER BY fb_id D

首先,我只想对我的困惑的问题说声抱歉。我真的不知道我的问题的正确标题是什么,因为我是angularjs的新手。顺便说一下,我正在使用angularjs制作一个webportal,我的webportal的功能之一就是发布反馈和回复反馈!当网站访问者发布反馈时,管理员将对其进行审查并对该反馈进行评论。例如,已经有10篇文章了,所以我使用mysql查询来显示它。像这样:

$query = "SELECT * FROM tblfb WHERE fb_status = 1 ORDER BY fb_id DESC";
...
while($row = mysqli_fetch_array($res)){
     echo "<h5>".$row['fb_sender']."</h5>
           <p>".$row['fb_content']."</p>
           <input type='text' ng-model='fbReply' id=".$row['fb_id'].">
          ";
}
$query=“从tblfb中选择*,其中fb_状态=1订单由fb_id描述”;
...
while($row=mysqli\u fetch\u数组($res)){
回显“.$row['fb\u sender']”
“$row['fb_content']”

"; }

在上面的代码中,它工作得很好,并且显示了所有已批准的帖子,但是在
fbRelpy模型中键入注释时,我遇到了一个问题。当我开始打字时,所有的
文本框
都被我输入的内容填满了!我的意思是,如果我在第一个文本框中输入,它也会在所有文本框中应用文本。可能是因为他们拥有所有的
ng模型
值。我该怎么办?提前谢谢。请了解我的问题标题

您之所以收到此问题,是因为您对每个评论输入使用相同的ng模型


可能的解决方案是为每个注释输入附加一个唯一的ng模型。您可以通过组合使用标识符和fb id来实现这一点。
ng model='fbReply'+.$row['fb_id'])。

问题是所有输入都具有相同的型号名称。您必须给出不同的模型来区分这些。您可以使用
'fbReply{{{'+$row['fb_id']+'}}'
。大括号将确保您以对象数组的形式获得输入

$query = "SELECT * FROM tblfb WHERE fb_status = 1 ORDER BY fb_id DESC";

while($row = mysqli_fetch_array($res)){
     echo "<h5>".$row['fb_sender']."</h5>
           <p>".$row['fb_content']."</p>
           <input type='text' ng-model='fbReply{{'+$row['fb_id']+'}}' id=".$row['fb_id'].">
          ";
}
$query=“从tblfb中选择*,其中fb_状态=1订单由fb_id描述”;
while($row=mysqli\u fetch\u数组($res)){
回显“.$row['fb\u sender']”
“$row['fb_content']”

"; }
您必须创建一个ng模型数组,您必须在控制器中这样定义您的ng模型

 fbReplay ={}
您的代码如下所示

$query = "SELECT * FROM tblfb WHERE fb_status = 1 ORDER BY fb_id DESC";
while($row = mysqli_fetch_array($res)){
echo "<h5>".$row['fb_sender']."</h5><p>".$row['fb_content']."</p>
       <input type='text' ng-model='fbReply['+$row['fb_id']+']' id=".$row['fb_id'].">";
}
$query=“从tblfb中选择*,其中fb_状态=1订单由fb_id描述”;
while($row=mysqli\u fetch\u数组($res)){
echo“$row['fb\u sender']”。“$row['fb\u content']”

"; }
这不是使用angular的正确方法。使用API调用获取backenn内容,然后使用angular将其与html集成。否则它将创建难以管理的代码。欢迎使用,如果您调用brother而不是sir,我将不胜感激:p@dutertehaha当然,brother!:D检查答案是否正确请@duterte并放弃投票