非常简单的Ajax请求获取员工ID并将用户信息返回为HTML哑。
Request ajax("employee/info?emp_id=3543")
回复
id = 3543
名称=某个名称
这只是填充UI的另一个简单的JS技巧。
但是我不明白下面的内容是如何能够正确执行并转储HTML代码的。
<script type="text/javascript" src="employee/info?emp_id=3543" />
当页面遇到以下代码时,它会像执行ajax请求一样执行并将代码转储到页面中。唯一的区别是它不再像 A jax那样异步。
问题:
这是正确的方法吗?它的+ ves和-ves。
对于用户来说哪个是正确的风景呢?
这是否也意味着任何带有“src”标签的HTML标签都可以这样使用?
答案 0 :(得分:0)
这是正确的做法吗?它的+ ves 和-ves。
取决于您是否要使用异步(ajax)方式。没有像+ ve或-ve那样的东西。 后一种方法需要更多时间。
哪个是正确的 用户吗?
Ajax方式就是那种意义上的正确方法。
这是否也意味着任何HTML标记 拿“src”标签可以像 此?
src 用于指定源路径。这就是它的意图。
答案 1 :(得分:0)
我已经使用这种javascript加载来进行跨域脚本编写。它在哪里非常有用。这是一个显示我的意思的例子。
[请记住,JS不允许来自javascript的跨域调用;由于内置安全限制]
在域www.xyz.com
上有一个服务,它为我提供了一个可以从http://xyz.com/users/list?age=20
访问的用户列表
它返回一个json,使用如下的包装方法
JSON:
{username:"user1", age:21}
如果我请求这个json包装的方法如下:
callMyMethod({username:"user1", age:21})
然后这是一个包裹的json,如果加载在我的页面上;将尝试调用名为callMyMethod的方法。这将在<script src="source">
类型的声明中被允许,否则将不被允许。
所以我能做的如下
<script language="javascript" src="http://xyz.com/users/list?age=20"></script>
<script language="javascript">
function callMyMethod(data)
{
//so something with the passed json as data variable.
}
</script>
这将允许我填充来自其他域的JSON,否则我将无法做到。所以;你知道如何实现跨域脚本编写本来是一个难以解决的问题。
这只是其中一种用途。
有人会这样做的其他原因是:
您在示例中指定的用法可能不太有用;如果服务器处理需要时间,而且异步ajax调用将是首选,可能只会延迟页面加载。