关于前端和后端数据交互问题
作者:NimoChu
链接:https://www.zhihu.com/question/26532621/answer/33144979
来源:知乎
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
重新修改答案后整理了一份《前后端数据交互方法**》**
在此介绍几种常用的前后端数据交互方法,并给出使用建议。以提高前后端协同开发的效率。
目录:
- HTML赋值
- JS赋值
- script填充JSON
- AJAX获取JSON
- WebSocket实时传输数据
- 总结
1. HTML赋值
输出到 Element 的 value 或 data-name
<input type="hidden" value="<?php echo $user_avatar;?>" />
<div data-value="<?php echo $user_avatar;?>"></div>
渲染结果
<input type="hidden" value="https://avatars1.githubusercontent.com/u/3949015?v=3&s=40" />
<div data-avatar="https://avatars1.githubusercontent.com/u/3949015?v=3&s=40"></div>
使用 JS 获取
$('input').val();
// http://jquery.bootcss.com/jQuery.data/
$('div').data('avatar');
优点:
不占用全局变量,由 JS 自由获取。
使用建议:
适合传递简单数据,也非常适合多个简单数据与 Element 绑定关系。
<ul>
<li>nimojs <span data-userid="1" >删除</span></li>
<li>nimo22 <span data-userid="2" >删除</span></li>
<li>nimo33 <span data-userid="3" >删除</span></li>
<li>nimo44 <span data-userid="4" >删除</span></li>
<li>nimo55 <span data-userid="5" >删除</span></li>
</ul>
<script>
$('span').on('click',function(){
$.post('/ajax/remove/',$(this).data('userid'),function(data){
// ...
})
})
</script>
2. JS赋值
将数据填充到 `
还没有评论,来说两句吧...