首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >通过java代码生成javascript时出现<a>标记问题

通过java代码生成javascript时出现<a>标记问题
EN

Stack Overflow用户
提问于 2009-10-29 19:12:21
回答 3查看 129关注 0票数 0

我应该如何用Java语言编写一条语句来在页面中生成JavaScript

代码语言:javascript
运行
复制
out.write("document.write('< a href='str'> '+str.slice(beg+1,end)+' </a>');");

以便在JavaScript中创建语句

代码语言:javascript
运行
复制
document.write("< a href=' "+str+" '> "+str.slice(beg+1,end)+" </a>"); //< a

链接将转到其地址存储在字符串中的页面

目前,它将href值作为字符串,而不是字符串中存储的值,即它正在搜索页面字符串

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2009-10-29 19:25:35

代码语言:javascript
运行
复制
out.write("document.write(\"< a href='\" + str + \"'> \" + str.slice(beg + 1, end) + \" </a>\");");
票数 2
EN

Stack Overflow用户

发布于 2009-10-29 19:20:33

您不能关闭<a>标记!

代码语言:javascript
运行
复制
document.write("<a href='" + str + "'>" + str.slice(beg+1, end) + "</a>");
票数 1
EN

Stack Overflow用户

发布于 2009-10-29 21:44:26

代码语言:javascript
运行
复制
out.write("document.write('<a href='str'> '+str.slice(beg+1,end)+' </a>');");

哇,你这里有四种级别的字符串编码, - 难怪会让你迷惑。在HTML节点中的JavaScript string文字中有一个文本字符串,在HTML <script>块中的Java string文字中有一个文本字符串。

最好避免做这样的事情,因为它很容易出错。如果str包含<&,那么问题是由于嵌入在HTML中(可能会导致跨站点脚本安全漏洞);如果str包含空格或引号,则问题是由于嵌入了属性值;</序列是<script>块中的无效HTML...

虽然你可以通过修改自己的字符串转义函数来解决这个问题,但我想说的是,你最好使用不涉及将字符串绑定在一起的函数:

代码语言:javascript
运行
复制
out.write(
    "var link= document.createElement('a');\n"+
    "link.href= str;\n"+
    "link.appendChild(document.createTextNode(str.slice(beg+1, end)));\n"+
    "document.getElementById('foo').appendChild(link);\n"
);

其中,foo是希望链接出现的元素。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1642995

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档