使用jquery加载的数据是否被视为HTML源代码的一部分?

时间:2014-01-10 10:22:42

标签: javascript php jquery html

search.php 网页是否包含带有选择框和按钮的表单,它分为两部分

---------------------------------------------
                                             |
                      1                      |
                                             |
                  Form with                  |
               input type button             |
                                             |
                                             |
----------------------------------------------
                                             |
                    2                        |
                                             |
         when I click on the button           |
        I display data from database         |
             using jquery without            |
           refreshing the database           |
                                             |
---------------------------------------------
  1. 具有相同字段的HTML表单应由用户和按钮填充。
  2. 当用户点击按钮时,我调用lod_date.php使用jQuery将数据从数据库加载到特定位置
  3. 加载的数据显示在一个包含5列的HTML表格中,其中一列由<a>标记

    包围
    ---------------------------------------------------------------------------------------
    column1     column2      column3    <a href='#' class='basic'>column4</a>      column2
    ---------------------------------------------------------------------------------------
    

    因为我想在点击链接后获取特定行的相关详细信息 (在使用JQuery UI的对话框中)

    但问题是当我点击特定行的链接时,我的脚本无法检测到标记。

    当我在Firefox中显示源代码时,应该包含我的HTML表的<div>仍然没有内容,但显示了包含数据的HTML表。当我用Firebug验证时,我发现加载的数据作为响应。

    当我们使用jQuery将数据加载到我们的页面时,它是否被视为我们页面源代码的一部分?如何检测用户何时点击链接?

    (我正在使用PHP和SQL Server)

    <div id="container">
    <div class="data"></div>
    <div class="pagination"></div>
    </div>
    

    数据应显示在<div class="data"> here where my tabel should be </div>之间,当我按下按钮时,我会加载此内容:

    $msg .= "<tr>
        <td>" . $row['column11'] . "</td> " .
        "<td>". $row['column12'] . "</td>" .
        "<td>".$row['column13']."</td>".
        "<td>".$row['column14']."</td>".
        "<td><a href='#' class='basic' >".$row['columns5']."</a></td>".    
        "<td>".$row['column6']."</td>".
        "</tr>";
    

    问题是当我尝试clik on the columns5时,即使我点击它,也没有发生任何事情!

2 个答案:

答案 0 :(得分:0)

您可以使用任何方式操作/更新html,没问题。只有生成的html应该正确并且标签应该正确关闭。

因此,如果您在html页面中编写<a href="javascript:alert('Hello World');">click me</a>并单击它,它肯定会显示警告消息。

我建议您使用Chrome开发者工具 - 控制台标签进行检查,并重新检查您的html格式是否有任何未关闭的标记/ javascript错误。

修改

将您的a更改为<a href='javascript:alert('Hello World');'>。 加载你的内容,在<div class="data"></div>的chrome use inspect中,查看内部内容以找出问题。

答案 1 :(得分:0)

我解决了以下问题:

  1. 我更改了这一行源代码:<td><a href='#' class='basic' >.$row['columns5'].</a></td>这一行<td>".$row['operateur']."<img src='search.png' class='imagesdetail' id='". $row['sens'] ."' ></td>。 (这个想法改变了这种变化,使用图像而不是URL:更漂亮)。

  2. 使用JQuery访问图像:$('#container .data table tbody tr td img').live('click',function(){ ajaxCall($(this).attr('id'));})

  3. ajaxCall():从数据库中获取数据并将其放入加载的JQuery UI对话框中。

  4. 我还有一个Jquery版本的问题,因为我有一个旧版本我必须使用live('click',function(){...})实时功能)它是我的问题的来源。 / p>