如何将变量插入<img/> src参数?

时间:2016-06-04 06:59:33

标签: javascript html

我正在尝试使用我从网络服务获取的数据(ID)在我的网页上生成二维码。我无法弄清楚如何将javascript变量作为<img> src参数的一部分插入。

如您所见,我可以使用myFunction更改src(单击AFTER按钮)。但我不知道如何将id变量插入初始页面加载(以替换img行末尾的ID1_GOES_HERE)。 请帮忙!

这是一段代码:

<!DOCTYPE html>
<head>
    <meta charset="utf-8">
    <title>TEST</title>        
</head>
<body>

<script>
var id1 = "41c0236f-ed21-4182-be3d-26513078f704";

function myFunction(){
    var id2 = "41c0236f-ed21-4182-be3d-26513078f704";
    document.getElementById('qr_img').src="http://chart.apis.google.com/chart?cht=qr&chs=300x300&chld=H|0&chl="+id2;
}
</script>

<img id="qr_img" src="http://chart.apis.google.com/chart?cht=qr&chs=300x300&chld=H|0&chl=ID1_GOES_HERE"/>
<button onclick="myFunction()">test</button>

</body>
</html>

2 个答案:

答案 0 :(得分:2)

不要使用按钮点击处理程序,只需从脚本中调用该函数:

<!DOCTYPE html>
<head>
    <meta charset="utf-8">
    <title>TEST</title>        
</head>
<body>

<script>
var id1 = "41c0236f-ed21-4182-be3d-26513078f704";

function myFunction(){
    var id2 = "41c0236f-ed21-4182-be3d-26513078f704";
    document.getElementById('qr_img').src = document.getElementById('qr_img').src + id2;
}

myFunction();
</script>

<img id="qr_img" src="http://chart.apis.google.com/chart?cht=qr&chs=300x300&chld=H|0&chl="/>
<button>test</button>

</body>
</html>

点击处理程序用于捕获按钮点击事件,并在那时执行某些操作。那不是你想要的,所以删除按钮点击处理程序。

<script>元素的末尾,只需致电myFunction()即可执行其预期目标。

如果要在整个文档及其所有依赖项加载后运行脚本,可以执行以下操作:

<script>
var id1 = "41c0236f-ed21-4182-be3d-26513078f704";

function myFunction(){
    var id2 = "41c0236f-ed21-4182-be3d-26513078f704";
    document.getElementById('qr_img').src = document.getElementById('qr_img').src + id2;
}

document.onload = myFunction();
</script>

对于这个简单的情况,你可能根本不需要一个函数,myFunction的正文可以简单地放在内联中,如下所示:

<script>
var id1 = "41c0236f-ed21-4182-be3d-26513078f704";
var id2 = "41c0236f-ed21-4182-be3d-26513078f704";
document.getElementById('qr_img').src = document.getElementById('qr_img').src + id2;
</script>

如果您涉及更多逻辑,并且需要组织(或模块化)它,该函数将非常有用。

答案 1 :(得分:2)

您可以将此添加到您声明的脚本下方并设置id1变量

function update_post_language( $post_id ) {
$post_type = get_post_type($post_id);
if ($post_type == 'dwqa-question' || $post_type == 'dwqa-answer') {
    $term = term_exists('ar', 'language');
    if ($term !== 0 && $term !== null`enter code here`) {
        wp_set_post_terms( $post_id, array ('ar'), 'language', true );
    }
}
}
add_action( 'save_post', 'update_post_language' );