Javascript仅在第一次刷新后工作?

Javascript仅在第一次刷新后工作?,javascript,jquery,mobile,refresh,Javascript,Jquery,Mobile,Refresh,你知道为什么下面的javascript函数只在我刷新页面一次后才起作用吗? 我试着把函数放在页面的底部,但仍然不起作用。 我觉得这与代码运行的顺序有关,但我无法确定具体在哪里。 我认为这是Ajax的一个问题,我不懂php,但我的asp.NETMVC应用程序中也有类似的东西。我使用jquery和on方法解决了这个问题。 请查看此编辑: 建立这可能适用于所有拥有javascript页面的用户。问题是jquery需要在围绕javascript的div标记中有一个属性。看看我在编辑中发布的链接。尝试将

你知道为什么下面的javascript函数只在我刷新页面一次后才起作用吗? 我试着把函数放在页面的底部,但仍然不起作用。 我觉得这与代码运行的顺序有关,但我无法确定具体在哪里。


我认为这是Ajax的一个问题,我不懂php,但我的asp.NETMVC应用程序中也有类似的东西。我使用jquery和on方法解决了这个问题。 请查看此编辑:
建立这可能适用于所有拥有javascript页面的用户。问题是jquery需要在围绕javascript的div标记中有一个属性。看看我在编辑中发布的链接。

尝试将您的函数置于settimeout javascript函数下…并将超时设置为100ms

您的意思是,无论您从结果集中单击哪个链接,incrementIssue函数都只执行一次?问题是,我不希望函数在加载时运行。这是一个ajax函数,所以我只希望在有人单击按钮时运行它。看看这个,没问题。只需在Google上搜索一下:D
    function incrementIssue(id) {
        var row = "#row" + id;
      if (window.XMLHttpRequest) {
        // code for IE7+, Firefox, Chrome, Opera, Safari
        xmlhttp=new XMLHttpRequest();
      } else { // code for IE6, IE5
        xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
      }
      xmlhttp.onreadystatechange=function() {
        if (xmlhttp.readyState==4 && xmlhttp.status==200) {
          document.getElementById("issue"+id+"Upvote").innerHTML=xmlhttp.responseText;
            //$(row.toString()).find('.ui-icon').removeClass('ui-icon-custom').addClass('ui-icon-arrow-d');

        }
      }
      xmlhttp.open("GET","incrementIssue.php?q="+id,true);
      xmlhttp.send();
    }

    </script>
    <meta name="viewport" content="width=device-width, initial-scale=1">
    <link rel="stylesheet" href="docs/themes/blue/jquery.mobile-1.2.0.css">
    <script src="http://code.jquery.com/jquery-1.11.1.min.js"></script>
    <script src="http://code.jquery.com/mobile/1.3.1/jquery.mobile-1.3.1.min.js"></script>

    </head>
    <body>

    <div data-role="page" id="pageone">
      <div data-role="header">
        <h1>Pithy</h1>
        <div data-role="navbar">
          <ul>
            <li><a href="index.php">Home</a></li>
            <li><a href="issues.php">View Issues</a></li>
            <li><a href="add.php">Add Issue</a></li>
          </ul>
        </div>
      </div>

      <div data-role="main" class="ui-content">
      <ul data-role="listview" data-inset="true" data-split-theme="c"  >    

    <?php

    mysql_connect($hostname, $username, $password) OR DIE ("Unable to
    connect to database! Please try again later.");
    mysql_select_db($dbname);

    //Fetching from your database table.
    $query = "SELECT * FROM $usertable";
    $result = mysql_query($query);

    if ($result) {
        while($row = mysql_fetch_array($result)) {
            $issue = $row["issueName"];
            $upvotes = $row["upvotes"];
            $id = $row["issueID"];
            echo "<li data-icon=\"arrow-u\" id=\"row".$id . "\"> <a data-transition=\"pop\" href=\"point.php?id=". intval($id). "\">".$issue ."</a><a href=\"javascript:incrementIssue(".$id.");\"></a> <span id=\"issue".$id."Upvote\" class=\"ui-li-count\">" .$upvotes."</span></li>";

        }
    }

    ?>
      </ul>

      </div>

      <div data-role="footer">
        <h6>See what's important.</h6>
      </div>
    </div> 

    </body>
    </html>