字段值获取未定义的jquery

时间:2012-07-06 13:29:17

标签: javascript jquery

我可以在javascript中清除事件que吗? 当我完成一个单击事件然后再执行一次单击事件时,即使输入字段的值为“newfile.jpg”,输入字段也会获得未定义的值

我通过执行somevariable = $('#cke_104_textInput')来检索值.val(); 但是somevariable得到的值未定义。

这是javascript代码:

$(function () {
    // Handler for .ready() called.
    function changeLink() {
        link = $('#cke_104_textInput').val();
        if (link == "") {}
        else {
            link = link.replace("_", "/");
            parts = link.split('.');
            explodeExtension = parts[parts.length - 1];
            link = link.replace("/download/", "/download/" + explodeExtension + "/");
            link = link.replace("." + explodeExtension, "");
            $('#cke_104_textInput').val('');
            $('#cke_104_textInput').val(link);
            clearInterval(changelink);
        }
    }

    function changePic() {
        link = $('#cke_103_textInput').val();
        if (link == "") {}
        else {
            link = link.replace("_", "/");
            parts = link.split('.');
            explodeExtension = parts[parts.length - 1];
            link = link.replace("/download/", "/show/" + explodeExtension + "/");
            link = link.replace("." + explodeExtension, "");
            $('#cke_103_textInput').val('');
            $('#cke_103_textInput').val(link);
            clearInterval(changepic);
        }
    }
    $('#cke_60').live('click', function (event) {
        changelink = setInterval(function () {
            changeLink()
        }, 1000);
    });
    $('#cke_64').live('click', function (event) {
        changepic = setInterval(function () {
            changePic()
        }, 1000);
    });
});

在代码中我尝试重写两个输入字段的内容。 必须这样做,因为文件不在它们之外的站点根目录中,并且为了能够在网站上显示或下载它们,网址需要采用特定格式。

2 个答案:

答案 0 :(得分:0)

要回答你的第一行问题,是的,你可以。看看unbind()

答案 1 :(得分:0)

您正在创建link作为全局变量,这意味着它与自身发生冲突。

link = $('#cke_104_textInput').val();更改为var link = $('#cke_104_textInput').val();

另外,作为旁注,您有两次此代码:

$('#cke_104_textInput').val('');
$('#cke_104_textInput').val(link);

这是多余和低效的。在这两种情况下都应该删除第一行,因为选择一个元素(即使是通过ID)也不是免费操作。