簡體   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