【问题标题】:Insert <input id='name'> value inside <img src=.....>在 <img src=.....> 中插入 <input id='name'> 值
【发布时间】:2021-10-22 18:19:40
【问题描述】:

如何将存储在输入框中的值插入到 img scr= 标签中。 我找到了这个代码来创建条形码

<div id="aggiungi" class="modal fade" role="dialog">
        <form method="post" class="form-horizontal" role="form" name="invio">
            <div class="modal-dialog modal-lg">
                <!-- Modal content-->
                <div class="modal-content">     
                    <div style='text-align: center;'>
                    <!-- insert your custom barcode setting your data in the GET parameter "data" -->
                       <img alt='Barcode Generator TEC-IT'src='https://barcode.tec-it.com/barcode.ashx?data=Nome%5Ct+Cognome%5Cn&code=&multiplebarcodes=false&translate-esc=true&unit=Fit&dpi=96&imagetype=Gif&rotation=0&color=%23000000&bgcolor=%23ffffff&codepage=Default&qunit=Mm&quiet=0&hidehrt=False'/>
                    </div>
                    <div style='padding-top:8px; text-align:center; font-size:15px; font-family: Source Sans Pro,   Arial, sans-serif;'>
                    <!-- back-linking to www.tec-it.com is required -->
                        <a href='https://www.tec-it.com' title='Barcode Software by TEC-IT' target='_blank'>
                        TEC-IT Barcode Generator<br/>
                            <!-- logos are optional -->
                            <img alt='TEC-IT Barcode Software' border='0' src='http://www.tec-it.com/pics/banner/web/TEC-IT_Logo_75x75.gif'>
                        </a>
                     </div>
                </div>
          </form>
 </div> 

我想更改 scr=.... 中的 Nome 和 Cognome 使用插入两个输入框中的值,如下所示:

<input type="text" class="form-control" id="name" name="name">
<input type="text" class="form-control" id="cognome" name="cognome">

最终我将这两个变量也存储在两个 javascrip 变量(javascript 函数)中

编辑中的 PS: 代码在引导模式中

从图片中可以看出,条形码下方的 Nome 和 Cognome 必须采用输入框中插入的值。真的,我只是在填写所有输入框时才尝试显示条形码。我已经在另一个 javascript 函数中将 Nome 和 Cognome 声明为 javascript 变量(var nome = document.getElementById('nome').value; 和 cognome),由这两个输入框上的 onkeyup 事件调用。我的问题是如何在 img scr=... 中更改它们我试图插入为 .... 或

【问题讨论】:

  • 这可以用javascript来完成。就像正常的 DOM 操作一样。但是要小心,因为它可能会打开 XSS 攻击的可能性。

标签: javascript php html string image


【解决方案1】:

基本上,这是一个关于使用可变参数修改部分 url 字符串(在您的情况下为 data 参数)的问题,以获得预期的 url。 可以使用URLSearchParams 来解决处理 url 参数的问题,如下所示:

let url = new URL('https://barcode.tec-it.com/barcode.ashx?data=Nome%5Ct+Cognome');
let nome = "nameValue";
let cognome = "surnameValue";
const data = `${nome}\\t ${cognome}`;
url.searchParams.set("data", data);
//it prints https://barcode.tec-it.com/barcode.ashx?data=nameValue%5Ct+surnameValue
console.log(url);

然后你可以将新的 url 存储为你的 img 标签的 src 属性。

【讨论】:

  • 感谢您的回答,但我不明白如何:let nome 和 let cognome 可以从输入框中获取新值。另外,不明白如何在我的代码顶部的 img scr 中插入新的 url。
  • @MassimoD.N.欢迎您,您必须将getElementById 与输入框一起使用并提取value 属性,与img 及其src 属性相同的方法,您可以将其设置为新值。您应该在页面中创建一个按钮,单击该按钮会触发事件,例如,请参阅addEventListener
  • @MassimoD.N. document.getElementById("imageid").src= 'new link' 或类似作品。
猜你喜欢
  • 1970-01-01
  • 2011-10-20
  • 2014-08-02
  • 2020-10-10
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-11-12
相关资源
最近更新 更多