如何快速地从浏览器向服务器发送一个元素,而无需重新加载浏览器页面?
有没有一种AJAX方法可以做到这一点,那是一种非文件方法吗?与“.load”相反?
.load可以很好地从服务器向浏览器发送单个元素而无需重新加载页面。 怎么做相反的方向?
浏览器是JavaScript。 服务器是带有windmarks的vxworks。
目前正在运行的方法但是RELOADS页面: 目前,浏览器元素是,我使用submit将其发送到服务器,但这需要很长时间并重新加载浏览器页面。
元素的innerHTML包含格式化为vxworks WINDMARK的数据。 (当vxworks服务器收到此提交时,它会读取windmark并将其复制到“C”字符串以供后端软件处理。)
答案 0 :(得分: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
}
?>
答案 1 :(得分:0)
在jQuery中使用$.post
发送数据。
答案 2 :(得分:0)
加载指令也可用于将数据传输到服务器:
$().load("url", {limit: 25}, function(){
//transmission finished
});
在此示例中,值为25的参数限制将传输到服务器。 取自:http://api.jquery.com/load/
答案 3 :(得分:0)
你可以简单地使用这样的ajax调用
$.ajax({
type: "POST",
url: "yourpage.php?id=someValue",
success:function(data){
//do some stuff here
});
答案 4 :(得分: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将数据发送到javascript
和json_decode
即可从javascript
<强>更新强>
获取服务器中的数据应该像通过post请求对象一样简单,或者取决于你的send方法,并解析JSON。
在PHP
中,这是使用上述代码获取数据的示例:
$dataFromBrowser = json_decode($_POST['browserdata'])
答案 5 :(得分:0)
我得到了它的工作。以下是经过纠正的JavaScript,来自上面的答案。
以下是如何更改服务器上的单个元素。
这也是如何在vxworks Web服务器上写入vxworks windmark字符串而不重新加载页面的示例。
注意:未指定任何URL,因此使用相同的页面。
$.ajax({
type: "POST",
url: "?general_page_to_MM_data_1_windmark=CCCCCCCCCCCCCC",
success:function(data_from_server){
}});