繁体   English   中英

如何通过AJAX将html表单变量传递给perl脚本?

[英]How do I pass a html form variable to a perl script via AJAX?

我试图通过POST将列表菜单中的html变量传递给perl脚本,但是发生的是jQuery ajax()能够执行perl而不包含从document.getElementById获得的值。 这是我的HTML代码:

<form id="form">
    <p id="survey">
        <label for="list"><b>Ran survey</b></label>
    </p>
    <p>
        <label for="division">Please select division:</label>
            <select type="list" id="list" name="division">
                <option>--Select One--</option>
                <option value="DENVER">Denver</option>
                <option value="PHOENIX_SOUTHWEST">Phoenix-Southwest</option>
                <option value="PORTLAND">Portland</option>
                <option value="SOUTHERN_HOUSTON">Southern-Houston</option>
                <option value="NORCAL">Norcal</option>
                <option value="SEATTLE">Seattle</option>
                <option value="VONS_SoCal">Vons-Socal</option>
                <option value="EASTERN">Eastern</option>
            </select>
        </p>
        <p id="survey">
            <input type="submit" value="Ran Survey" onclick="surveyFunction();" />
        </p>
    </form>
function surveyFunction() {
    var div = document.getElementById("list").value;
    $.ajax({
        type: "POST",
        url: "possurv.pl",
        data: div,
        success: function(result){
            $('#survfeedback').html(result);
        }
    });
}

您需要在查询字符串中包含参数名称才能为其分配值。 我认为这应该遵循作为控件名称的标准惯例。 在这种情况下,您可以自己构建查询字符串:

data: 'division=' + encodeURIComponent(div),

或者,您可以发送一个对象,然后让jQuery为您将其序列化为查询字符串:

data: { division: div },

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM