0

我是 php 的超级初学者,我正在使用一个名为 Yii 的 MVC php 框架。我似乎找不到任何解释如何使用 PHP 获取 html 元素值的文章。我所看到的所有地方都是关于如何在其他视图中的 POST 之后从表单字段中获取值。无论如何要获取字段值并将它们发送到 PHP 中的控制器,然后返回原始视图。

在 .Net MVC 中,我只使用 jquery 来获取表单字段并进行 ajax 调用。这不是敏感数据,所以我不担心安全性。我喜欢 ajax,因为我不做任何页面回发,我只是将我的数据发送过来并保持在我所在的同一页面上。

有没有办法用 PHP 做 MVC AJAX 之类的事情?读取 html 元素值并将它们发送到控制器以进行数据操作?

4

1 回答 1

1

它的工作方式相同。Yii 与 jquery 捆绑在一起,所以你

只需使用 jquery 获取表单字段并进行 ajax 调用

到某个控制器函数,用它做任何你想做的事,并返回一个响应,用 php 的echo.

如果您已经知道一些 jquery,那么客户端应该与 .net mvc 没有太大区别。

编辑:
要将 a 添加<script>到生成的 html 中,请参见registerScript

要创建 url,请使用createUrl函数。

将 ajax 选项添加到 html 标记代码类似于:

echo CHtml::checkBox('mybox',false,
  array(// array for htmloptions, we also pass ajax options in here
    'class'=>'checkBoxes_class',
    'ajax'=>array(// this is ajax options for jquery's ajax
      'type'=>'POST',
      'url'=>Yii::app->createUrl('xyz',array('clickedboxid'=>'mybox')), // here you passed clickedboxid as a get variable
      'beforeSend'=>'function(){}',
      'success'=>'',
      // etc etc
    )
  )
);

每个 html 标签生成器辅助函数都接受 htmlOptions 数组,我们也可以在其中传递ajax options

在控制器中读取这些值时:

public function actionSomeAction($id){
   // $id is mybox
   echo "Hello"; // this is returned as response to the client
}

希望这足以让您开始。

于 2012-02-28T06:25:39.500 回答