+ -
当前位置:首页 → 问答吧 → 表单按了回车键,就提交了,而不是调用ajax ,大家快来帮帮忙呀

表单按了回车键,就提交了,而不是调用ajax ,大家快来帮帮忙呀

时间:2011-09-21

来源:互联网

表单是这样写的

HTML code
FORM   ACTION="/cgi-bin/aulili"   METHOD="GET"  name="name_form" >
        <input name="data" type="text" id = "form_data" onBlur="sender()" value="" size="80"  height="30" onKeyDown="noNumbers(event);">
        </FORM > </td>


现在onBlur 事件的sender()函数调用ajax
JScript code
/*
 *创建异步访问对象
 */
function createXHR()
{
    var xhr;


    try
    {
        xhr = new ActiveXObject("Msxml2.XMLHTTP");
    }
    catch (e)
    {
        try
        {
            xhr = new ActiveXObject("Microsoft.XMLHTTP");
        }
        catch(E)
        {
            xhr = false;
        }
    }

    if (!xhr && typeof XMLHttpRequest != 'undefined')
    {
        xhr = new XMLHttpRequest();
    }

    return xhr;
}

/*
 *异步访问提交处理
 */
function sender()
{
    xhr = createXHR();

    if(xhr)
    {
        xhr.onreadystatechange=callbackFunction;
        
        alert(document.getElementById("form_data").value);
        
        xhr.open("GET", "http://127.0.0.1/cgi-bin/aulili?data="+encodeURIComponent(document.getElementById("form_data").value)+"&my=a",true);
        
        xhr.send(null);
        
        var testDiv = document.getElementById("center");
        testDiv.style.top = "-20px";
        testDiv.style.left = "150px"
    }
    else
    {
        //XMLHttpRequest对象创建失败
        alert("浏览器不支持,请更换浏览器!");
    }
}

/*
 *异步回调函数处理
 */
function callbackFunction()
{
    if (xhr.readyState == 4)
    {
        if (xhr.status == 200)
        {
            var returnValue = xhr.responseText;

            if(returnValue != null && returnValue.length > 0)
            {
                document.getElementById("current_time").innerHTML = returnValue;
            }
            else
            {
                alert("结果为空!");
            }
        }
        else
        {
            alert("页面出现异常!");
        }
    }
}



在输入的时候,按了回车键,没有想到就自动提交表单了。
跳转到http://127.0.0.1/cgi-bin/aulili 页面了


 我要做的是 按了确定健不让跳转,只执行 onBlur 事件的sender()函数调用ajax?



做个要怎么呀,大侠们,路过了,就帮帮忙呀?

作者: tan625747   发布时间: 2011-09-21

和你上边的代码没关系 你的noNumbers(event)这个是怎么写的

作者: fanchuanzhidu   发布时间: 2011-09-21

noNumbers(event)
屏蔽按 Enter 就自动提交吧

作者: zhongxingxuan   发布时间: 2011-09-21

热门下载

更多