Send POST data to PHP without using an HTML form?

前端 未结 7 2028
眼角桃花
眼角桃花 2020-12-08 11:54

Is there anyway to send post data to a php script other than having a form? (Not using GET of course).

I want javascript to reload the page after X seconds and post

7条回答
  •  盖世英雄少女心
    2020-12-08 12:09

    How about this:

        function redirectWithPostData(strLocation, objData, strTarget)
    {
        var objForm = document.createElement('FORM');
        objForm.method = 'post';
        objForm.action = strLocation;
    
        if (strTarget)
            objForm.target = strTarget;
    
        var strKey;
        for (strKey in objData)
        {
            var objInput = document.createElement('INPUT');
            objInput.type = 'hidden';
            objInput.name = strKey;
            objInput.value = objData[strKey];
            objForm.appendChild(objInput);
        }
    
        document.body.appendChild(objForm);
        objForm.submit();
    
        if (strTarget)
            document.body.removeChild(objForm);
    }
    

    use like this:

    redirectWithPostData('page.aspx', {UserIDs: getMultiUserSelectedItems()},'_top');
    

提交回复
热议问题