0

我有以下表格:

<!DOCTYPE html>
<head>
</head>

<body>
<div>
    <label>
        <h1>Input 1</h1>
    </label>
    <form>
        <input type="text" name="input_1" class="input">
    </form>
</div>
<!---Javascipt Sources --->
<script src="js/vendor/jquery-1.9.1.min.js"></script>
<script src="js/form.js"></script>
</body>
</html>

使用以下 Javascript:

$(document).ready(function(e) {
    $('.input').blur(function() {
        var number = $('.input');
        var data = 'number=' + number.val();

        $.ajax({
            url: "cfc/form.cfc",
            method: "read",
            type: "post",
            data: data,
            success: function(html) {
                if (html == 1) {
                    alert('wyslane');
                }
                else {
                    alert('wrong');
                }
            }
        });
        return false;
    });
});

这指向以下CFC:

<cfcomponent>
<cffunction name="Read" access="remote" output="false">
    <cfreturn true>
</cffunction>
</cfcomponent>

我在 Chrome 的控制台上收到以下错误消息:"READ http://127.0.0.1:8500/Google%20Drive/testing/cfc/form.cfc 501 (Method READ is not is not implemented by this servlet for this URI) "

以下是该调用的预览页面:

Apache Tomcat/7.0.23 - 错误报告

HTTP 状态 501 - 此 Servlet 未针对此 URI 实现方法 ADDTOSESSION

类型状态报告

此 Servlet 未针对此 URI 实现消息方法 ADDTOSESSION

描述服务器不支持完成此请求所需的功能(此 Servlet 未针对此 URI 实现方法 ADDTOSESSION)。

Apache Tomcat/7.0.23

使用 URL 登录 RDS 后,我可以很好地点击 CFC http://127.0.0.1:8500/Google%20Drive/testing/cfc/form.cfc

是不是我在代码方面做错了什么,或者这对内置服务器来说是不是很时髦?我也在 Google Drive 文件夹之外尝试过,直到 webroot,但我得到了同样的错误。应授予驱动器本身的所有适用权限(用户、管理员、系统)。

视窗 7 / 冷融合 10

4

2 回答 2

1

CFC 方法名称必须作为 HTTP 参数(通过formurl)传递。尝试method: "read"从您的设置中删除并附?method=read加到您的url参数,如下所示:

$.ajax({
        url: "cfc/form.cfc?method=read",
        type: "post",
        data: data,
        success: function(html) {
            if (html == 1) {
                alert('wyslane');
            }
            else {
                alert('wrong');
            }
        }
 });
于 2013-05-08T01:23:11.127 回答
1

感谢@imthepitts 为我指明了正确的道路。我复制并粘贴了您的代码并收到 500 错误。我对其进行了一些修改以使其正常工作:

    $.ajax({
            url: "cfc/form.cfc",
            type: "post",
            data: {
                method: "read",
                input1: 'hi'},
            success: function(html) {
                if (html == 1) {
                    alert('wyslane');
                }
                else {
                    alert('wrong');
                }
            }
     });

作为一个附带问题,我在哪里可以找到我必须通过 FORM 或 URL 传递它?我似乎不断收到关于如何处理 AJAX 调用的相互矛盾的信息,并希望有一些来源可供参考。谢谢你的帮助。

于 2013-05-08T01:59:56.047 回答