【问题标题】:Retrieve Values From the Controller in JQuery在 JQuery 中从控制器中检索值
【发布时间】:2009-05-20 11:56:57
【问题描述】:

我是 Jquery 的新手。如何从我的控制器中检索值并将它们与 JQuery 中的一些字符串进行比较?

   $(".select"+increment).change(function () 
            {

          if("here i need the value from my controller " =='String')
               {
       $("<label id=labelstr"+stringinc+"  >"+labelname+"</label>").appendTo(".menu li");
       $("<input id=inputstr"+stringinc+" type= 'text' ></input>").appendTo(".menu li");
              }
         }

【问题讨论】:

  • 您必须更具体 - 什么类型的控制器,它安装在服务器上?你想完成什么?您需要更好地介绍您的问题,因为很难辨别您想要达到的目标。
  • 不知道这个问题是关于什么的。 jQuery 没有所谓的“控制器”
  • 我想获取从我的控制器返回的 php 值..我正在使用 Cakephp 框架..在我的控制器中我想获取值并在 JQuery 中进行比较...我的控制器是表单和操作是视图..在那个动作中,我从表格中获取所有值..
  • 你应该编辑你的问题和标题并添加相应的标签。

标签: php jquery cakephp


【解决方案1】:

[edit]:这个答案是如果控制器是指在 ASP.NET MVC 项目的 ViewData 对象中传递的控制器数据。 [/编辑]

脚本必须在 aspx/ascx 中(而不是在单独的 JS 文件中)。

    <script language="Javascript">

       $(".select"+increment).change(function () 
            {

          if("<%=ViewData["YourData"] %>" =='String')
               {
       $("<label id=labelstr"+stringinc+"  >"+labelname+"</label>").appendTo(".menu li");
       $("<input id=inputstr"+stringinc+" type= 'text' ></input>").appendTo(".menu li");
              }
         }
    </script>

【讨论】:

  • 不,我想获取从我的控制器返回的 php 值。我正在使用 Cakephp 框架。在我的控制器中,我想获取值并在 JQuery 中进行比较...
【解决方案2】:

您的问题非常令人困惑,但我会尽力提供帮助。我将假设您想通过 AJAX 检索此信息。我还将假设您的 CakePHP 控制器在调用时会输出以下内容(您可以通过以下方式找到:http://yoursite/Forms/views):

This is some random string

为了按照我的假设使用它,您需要这样做:

<script language="javascript">
$(function() {
    $(".select"+increment).change(function () {
        $.get('/Forms/views',{},function(data) {
            if(data == 'This is some random string') {
                // I have no idea where you are getting the
                // 'stringinc' and 'labelname' variables from.
                $("<label id=labelstr"+stringinc+"  >"+labelname+"</label>").appendTo(".menu li");
                $("<input id=inputstr"+stringinc+" type= 'text' ></input>").appendTo(".menu li");
            }
        });
    });
});
</script>

现在,如果您尝试按照 Oliver 建议的方式进行操作(除了在 CakePHP 中),您需要这样做:

<script language="javascript">
$(function() {
    $(".select"+increment).change(function () {
        // I'm not familiar with Cake, you might need to use
        // some sort of template syntax. Either way, whatever
        // method you need to use to get the value into you view
        // let's just assume its called '$value_from_controller'.
        var data = <?= $value_from_controller; ?>;
        if(data == 'This is some random string') {
            // I have no idea where you are getting the
            // 'stringinc' and 'labelname' variables from.
            $("<label id=labelstr"+stringinc+"  >"+labelname+"</label>").appendTo(".menu li");
            $("<input id=inputstr"+stringinc+" type= 'text' ></input>").appendTo(".menu li");
        }
    });
});
</script>

我希望这在某种程度上有所帮助。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-11-20
    • 2020-06-04
    • 2018-10-30
    • 1970-01-01
    • 2012-05-10
    • 1970-01-01
    • 2023-03-17
    • 1970-01-01
    相关资源
    最近更新 更多