简单(或可能不是)JSP测试页面

时间:2013-12-09 14:06:13

标签: javascript

我有一个看起来像这样的测试页

<%@ page contentType="text/html; charset=UTF-8"%>

                                    

<body>
    <table width="100%" border="0" cellspacing="0" cellpadding="0" >
        <tr>
            <td width="50%">&nbsp;</td>
            <td width="50%">&nbsp;</td>
        </tr>

        <tr>
            <td><H3>Service (True/False) check</H3></td>
            <td><H3>Response</H3></td>
        </tr>

        <tr>
            <td><textarea id="trueFalseInput" onkeyup="trueFalseLookup()" style="margin-left:5px;width:300px;height:150px;" ></textarea></td>
            <td><textarea id="trueFalseResult" style="margin-left:5px;width:300px;height:150px;" ></textarea></td>
        </tr>

    </table>
</body>

我导入了JQuery文件以及我的JS文件。

testPage.js

        function trueFalseLookup()
    {
        var strToCheck = $('#trueFalseInput').val();

        $.getJSON( 'myService?text='+ strToCheck +'&type=exists'  ).
                success( trueFalseResponse ).
                error( function ()
        {
            $('#trueFalseResult').val("Error calling my service");
        });
    }

    function trueFalseResponse( data )
    {
        $('#trueFalseResult').val('');

        if( data.error )
        {
            $('#trueFalseResult').val('Error: ' + data.errorMessage );
        }
        else
        {
            for( var i=0; i < data.results.length; i++ )
            {
                $('#trueFalseResult').val($('#trueFalseResult').val() +  '[' + data.results[i].word + ']: '+ data.results[i].homophone + '\n');
            }
        }
    }

当我从服务器提供JSP文件时,一切正常。 我的浏览器是否可以在我的本地c:/驱动器上打开此页面? 我可以使用HTTP URL导入JQuery文件吗?我只是将我的Javascript粘贴到Script标签之间的JSP文件中? 如何修改ajax服务器调用以调用“MyLocalHost”服务器?

1 个答案:

答案 0 :(得分:0)

你混淆了为jQuery的Ajax调用提供的两个不同的API。之一:

// no failure API available, I believe, in this case.
$.getJSON( 'myService?text='+ strToCheck +'&type=exists', trueFalseResponse )

$.getJSON( 'myService?text='+ strToCheck +'&type=exists')
    .done(trueFalseResponse)
    .fail(/* ... */)

您也可以使用基本jQuery.ajax电话执行此操作;在这种情况下,您可以使用“success”属性名称。但我认为第二个例子可以满足您的需求。