php - Jquery 文本输入更改功能不起作用

标签 php javascript jquery

我只是从 PHP GET 方法获取参数并使用 jQuery 使用它们。运行页面无输出。

<?php
    if (isset($_GET['url'])){
        $url = $_GET['url'];
        $url = explode(" " , $url);
        echo end($url);
        exit;
    }
?>
<html>
<head>
<script type="text/javascript" src="http://code.jquery.com/jquery-1.7.1.js"></script>
<script type="text/javascript">
    $('input[type=text]').change(function (){
        if ($(this).val() !== ''){
            var url = $(this).val():
            $.post('grab.php?url='+url+'', function (data){
                window.open(data, 'Download', 'width=10,height=10');
                $(this).html('');
            });
        }
    });
</script>
</head>
<body>
<input type="text" style="width:100%;height:20px;"/>
</body>
</html>

我是设计新手,希望这里有错误。

最佳答案

首先将您的文档置于标准模式(通过在开头使用适当的文档类型,这意味着 HTML 4/XHTML 1 strict 或 HTML 5)。然后就可以使用错误控制台进行调试了。

我发现了以下错误

Unexpected token: ':' on line 7,

冒号应该是分号。

var url = $(this).val():

然后,什么也没发生的真正原因是因为在调用/缓存脚本时输入不存在。您需要在构建 DOM 后执行它。

$(document).ready(function() {
   // content
});

最终代码。

$(document).ready(function() {
   $('input[type=text]').change(function (){
      if ($(this).val() !== ''){
         var url = $(this).val();
         $.post('grab.php?url='+url+'', function (data){
            window.open(data, 'Download', 'width=10,height=10');
            $(this).html('');
         });
      }
   });   
});

关于php - Jquery 文本输入更改功能不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8692284/

相关文章:

javascript - 使用 jquery 将 dt/dd 列表转换为 li 列表?

php - 使用闭包表模型的 Doctrine2 分层数据

PHP 发送变量到 file_get_contents()

PHP/MySQL - 一旦日期与 MySQL 行日期之一匹配就运行函数

javascriptexecutor - 无法单击正文样式标记为 "overflow:hidden"的元素

javascript - Extjs 网格中的重叠工具提示

JavaScript/jQuery "Uncaught TypeError"类列表

javascript - 使用javascript获取 '[ ]'标签内的文本

javascript - Bootstrap Modal 在 IE8 中加载页面时打开

php - php中如何获取url值