Bit.ly共享文本框功能

时间:2011-08-27 19:36:19

标签: javascript bit.ly

有没有人知道在你完成输入链接后bit.ly如何替换textarea?

1 个答案:

答案 0 :(得分:1)

我认为OP正在询问bit.ly如何将长URL转换为较短的URL而不重新加载页面。这可以通过对网页的AJAX调用来完成,该网页上运行有脚本。

这是我尝试在表单提交上获得类似的效果,我不知道你最感兴趣的是哪个方面。

<script type="text/javascript">
document.getElementById('formElement').onsubmit = "return requestURL();";
function requestURL() {
    var data = document.getElementById('formInputData').value; // get value from <input type="text" id="formInputData />
    if (window.XMLHttpRequest) {
        var request=new XMLHttpRequest(); // code for IE7+, Firefox, Chrome, Opera, Safari
    }
    else {
        var request=new ActiveXObject("Microsoft.XMLHTTP"); // code for IE6, IE5
    }
    request.onreadystatechange=function() {
    if (xmlhttp.readyState==4 && xmlhttp.status==200) {
        // if the request worked, output the data the server returned (PHP, .net, etc.)
        document.getElementById('serveroutput').innerHTML = result.responseText;
    }
    request.open("GET", "serverscript.ext?data="+data, "true"); // Setup the server request
    request.send(); // Send the request to the server
    return false; // Stops the form from submitting normally
}
</script>

此示例没有安全性,样式或其他特殊内容,但可能会提供更好的主意 JSON或类似方法可能用于将数据返回到JavaScript,然后JavaScript会对数据进行样式化和显示。我不能详细介绍bit.ly使用的内容,但如果我尝试使用类似的JavaScript解决方案,这就是我会使用的想法。

我是如何回答这个问题的?我是否回答了完全不同的事情?我应该扩展答案吗?我问了太多问题吗? (对最后一个问题是)


响应按空格键时的注释,可以使用以下功能将该功能添加到上述代码中。

<script type="text/javascript">
    document.getElementById('formInputData').onkeypress = function() {
        if(document.getElementById('formInputData').value.split('')[-1] === " ") {
            document.getElementById('formInputData').value = document.getElementById('formInputData').value.substring(0, str.length - 1);
            requestURL();
        }
    }
</script>