【问题标题】:How to get any DOM Element by Ajax in PHPFox如何在 PHPFox 中通过 Ajax 获取任何 DOM 元素
【发布时间】:2013-01-09 14:02:35
【问题描述】:

我认为我可以使用

$this->get('element_id')

获取 Ajax-Function 中每个 DOM-Element 的值。但这不起作用。只有后元素我可以这样,对吧? 但是我如何获得其他元素?

感谢您的帮助...

这是我的 Ajax 类:

class Name_Component_Ajax_Folder_Ajax extends Phpfox_Ajax
{
public function test(){

    $iChildItemId = $this->get('element_id');
    var_dump($iChildItemId);
    $this->html('#testdiv', $this->getContent());
}
}

通过单击链接,我调用此函数 ( test() ),并且我想获取输入字段 (elemnt_id) 的值

【问题讨论】:

  • 信息不足。请出示您的 javascript。
  • 好吧,看看我的编辑..

标签: phpfox


【解决方案1】:

基本上,您有两种常见的解决方案可以在 Web 浏览器(Firefox、Chrome 等)发送到服务器的 AJAX 请求中传递值。

如果您使用 POST 请求,则应将您的预期值指定为隐藏输入 <input type='hidden' id='val1' value='value_you_want_to_pass_to_sever'>

如果您使用 GET 请求,您可以使用 URL 参数传递它,例如:www.youserver.com?val1=value_you_want_to_pass。

你可以通过JQuery获取你想要传递的值。

然后您可以使用 $this->get('val1') 在服务器端获取您的价值。

【讨论】:

  • 感谢您的回复。目前我是通过 GET-Request 来完成的,但我喜欢通过 POST 来获取它。你的第二个想法 ($this->get('val1')) 我已经测试过了(看看我的帖子),但这不起作用。该变量每次都是“null”。
【解决方案2】:

这应该可以设置元素:

$this->call('$(\'#js_photo_category_' . $aCategory['parent_id'] . '\').attr(\'selected\', true);');

同样可以用来获取值

$elementVal = $this->call('$(\'#js_photo_category_' . $aCategory['parent_id'] . '\').val();');

最好的方法是在客户端使用 javascript 来使用 foreach 获取 id,将它们保存在数组/json 中并在请求中发送它们,然后在完成后执行一些操作:

$.ajaxCall('module.function_name', 'arrayData='+myArray).done(function(data) {
        javascript_function(data);
    });

希望对你有帮助

【讨论】:

    猜你喜欢
    • 2015-12-05
    • 2011-08-18
    • 2011-09-16
    • 2018-01-30
    • 1970-01-01
    • 2017-04-03
    • 1970-01-01
    • 2018-09-05
    • 2017-05-20
    相关资源
    最近更新 更多