JavaScript不在我放置的任何地方运行

时间:2019-03-03 05:36:27

标签: javascript php html

我已经使脚本工作了,但是当我尝试添加另一个脚本时,它将无法运行。我尝试将其放置在此处其他人说的所有地方(在标记之前),但无法使用。所以我想知道这可能有问题。这是PHP文件中的HTML代码,所以我认为那里可能有问题吗?我尝试了window.onload,但效果不佳。我的想法不多了,所以我不得不在这里问。多亏有谁能够指出我在哪里错了。

这是我当前的代码:

<html>
<body>

    <div class="first-row" bordercolor="yellow">
    <div id="countdown"></div>
    <script>
    function UpdateRecord() {
    var userid = '.$userid.';
    var logid = '.$row['spotid'].';

          $.ajax({
                type:"POST",
                url:"spotlightcount.php",
                data:{ userid: userid, logid: logid },
                success:function () {

                }

            });
    }
    </script>
    <script>
    var timeleft = 15;
var downloadTimer = setInterval(function(){
  document.getElementById("countdown").innerHTML = "<span id=" + "clicklink" + ">" + "&nbsp&nbsp&nbspWatch the ad for " + timeleft + " more seconds! Feel free to look around! Or</font> <a href=" + "members.php" + "><font color=" + "white" + ">>Skip login ad!<</font></a></span>";
  timeleft -= 1;
  if(timeleft <= 0){
    clearInterval(downloadTimer);
    document.getElementById("countdown").innerHTML = "<span id=" + "linkclick" +">&nbsp&nbsp&nbspYou have been given 10 credits and 10 response points! <a href=" + "members.php" + "><font color=" + "yellow" + ">>Click here to go to members area!<</font></a><font color=" + "white" + "> or</font> <a href=" + "loginad.php" + "><font color=" + "yellow" + ">>Reserve your own login ad!<</font></a></span> ";
    UpdateRecord();
  }
}, 1000);

    </script>
    </div>
<div id="second-row" class="second-row">
  <iframe id="loginad" src="'.$row['adurl'].'"></iframe>
</div>
<script> (This part doesn't work)
document.getElementById("second-row").onclick = function(e){
  alert("click");
};
</script>
<script type="text/javascript" src="https://code.jquery.com/jquery-3.3.1.js"></script>
<script src="fitty.min.js"></script>
<script>
fitty("#clicklink");
fitty("#linkclick");
</script>
</body></html>

如代码所示,我将“此部分不起作用”放置在脚本无法执行任何操作的位置。也许你们可以帮助我并使其成功吗?我希望能够捕获div的点击事件。

2 个答案:

答案 0 :(得分:1)

要在HTML或javascript代码部分中使用PHP变量,请使用

<?= $variable ?>

例如,在您的代码中:

function UpdateRecord() {
  var userid = '<?=$userid?>';
  var logid = '<?=$row["spotid"]?>';
  ...
}

要在字符串中使用引号,您可以混合使用单引号和双引号(最好选择一个并坚持使用):

var strSingleInDouble = "<span id='clicklink'>";
var strDoubleInSingle = '<span id="clicklink">';

或像这样转义内部引号:

var strEscaped = "<span id=\"clicklink\">";

如果 clicklink 是一个javascript变量,请不要使用任何引号。

var varInStr = "<span id=" + clicklink + ">";

答案 1 :(得分:0)

您需要在Spotid中添加“”,并且$ .ajax中存在一些问题,因为您无法在JavaScript文件中使用$ .ajax

var logid = '.$row["spotid"].';

$.ajax({
    type: "POST",
    url: "spotlightcount.php",
    data: { userid: userid, logid: logid },
    success: function () {
    }
});