0

如何在不重新加载浏览器页面的情况下快速将一个元素从浏览器发送到服务器?

是否有 AJAX 方法可以做到这一点,即 NON-FILE 方法?“.load”的反义词?

.load 可以很好地将单个元素从服务器发送到浏览器,而无需重新加载页面。反方向怎么办?

浏览器是 JavaScript。服务器是带有风印的 vxworks。

可行但重新加载页面的当前方法:目前,浏览器元素是,我使用提交将其发送到服务器,但这需要太长时间并重新加载浏览器页面。

元素的 innerHTML 包含格式化为 vxworks WINDMARK 的数据。(当 vxworks 服务器收到此提交时,它会读取风印并将其复制到“C”字符串以供后端软件处理。)

4

6 回答 6

1

如果您使用的是 jQuery 和 PHP,那么这样的东西应该可以工作:

JS:

$.ajax('doServerSuff.php?action1=saveLog', function() { 
    // do stuff after server received the data
});

PHP (doServerStuff.php):

<?php
    if ($_GET['action1'] == 'saveLog') {
        //do stuff
    }
?>
于 2012-05-31T17:12:24.223 回答
0

您可以像这样简单地使用 ajax 调用

$.ajax({
                type: "POST",
                url: "yourpage.php?id=someValue",
               success:function(data){
               //do some stuff here
            });
于 2012-05-31T17:23:47.060 回答
0

您可以使用jQuery. 使用这样的东西:

$.post('urlfromserver',browserdata,function(datafromserver){
    //do stuff
})

如果你让我多说一点,最好使用JSON向服务器发送/接收数据。考虑到这一点,您可以执行以下操作:

$.post('urlfromserver',{browserdata: JSON.stringify(browserdata)},function(datafromserver){
    javascriptObject = jQuery.parseJSON(datafromserver)
    //do stuff
})

在你的 PHP 代码中,它就像使用json_encode发送数据javascriptjson_decode接收数据一样简单javascript

更新

获取服务器中的数据应该像根据您的发送方法通过 post 或 get 请求对象并解析 JSON 一样简单。

PHP,这是使用上述代码获取数据的示例:

  $dataFromBrowser = json_decode($_POST['browserdata'])
于 2012-05-31T17:28:02.767 回答
0

在 jQuery 中使用$.post来发送数据。

于 2012-05-31T17:11:31.510 回答
0

加载指令也可用于向服务器传输数据:

$().load("url", {limit: 25}, function(){
    //transmission finished
});

在本例中,值为 25 的参数限制将被传输到服务器。取自:http://api.jquery.com/load/

于 2012-05-31T17:20:02.743 回答
0

我让它工作了。这是来自上述答案的更正后的 JavaScript。

以下是如何在服务器上更改单个元素。

这也是如何在 vxworks web 服务器上写入 vxworks windmark 字符串而不重新加载页面的示例。

注意:没有指定 URL,因此使用相同的页面。

$.ajax({ 
        type: "POST", 
        url: "?general_page_to_MM_data_1_windmark=CCCCCCCCCCCCCC", 
        success:function(data_from_server){ 
    }}); 
于 2012-06-01T19:44:31.803 回答