如何在回显的按钮上添加功能?

时间:2016-05-28 15:22:40

标签: php mysql

这是我的功能

echo "<input type='button'value='add'class='btnadd'onclick=\'addorder("'.$row["name".'","'.$row["price"].'");\'>";

这是我的回声

{{1}}

我在stackoverflow中尝试了很多解决方案,但是当我点击添加按钮时该功能不起作用

3 个答案:

答案 0 :(得分:2)

HTML是一种客户端语言。 PHP是一种服务器端语言。 HTML无法直接与PHP交互。您只能通过在特定URL上使用ajax调用来执行此操作,该特定URL又使用所需数据或使用RESTful或SOAP Apis调用该特定函数。

答案 1 :(得分:1)

确定。我将澄清当你是php和javascript的新手时你必须知道的事情。

所以当你点击一个php时,它会生成一些输出(现在认为它是文本)。一旦php执行完成,输出文本就会发送到浏览器。只有在浏览器中,文本才会被解释为HTML,Javascript和CSS。 因此,您尝试实现的功能是在单击按钮时调用某个函数,将调用javascript中定义的函数。

因此,从php开始,您将需要生成javascript作为文本,其中包含一个函数(javascript方法addorder)。

下面的例子是让人们了解它是如何运作的。

PHP代码:                  

 ?>
<input type="button" value='add' onclick='addorder("<?php echo $name; ?>","<?php echo $price; ?>");' />
 <script type="text/javascript">
     function addorder(name, price){
             alert(name + ' : ' + price);
     }
 </script>
 </body>
 </html>

答案 2 :(得分:0)

使用函数参数将服务器端值传递给前端。修改你的js函数,看它是如何工作的。

  def create
    @my_object = MyObject.new(my_object_params.merge(user: User.find(session["user_id"])))
    respond_to do |format|
      if @my_object.save
        format.html { redirect_to controller: "users", action: "index", notice: 'Saved successfully.' }
      else
      ....
      end
    end
  end