如何将变量从JavaScript传递到HTML?

如何将变量从JavaScript传递到HTML?,javascript,jquery,html,Javascript,Jquery,Html,我在我的文件中定义了一个JavaScript,如下所示: <script language="javascript"> var transports = "<%=api.transports%>"; var httpsTransport; var httpTransport; var splittedTransports= transports.split(','); for(i = 0; i < splittedTransp

我在我的文件中定义了一个JavaScript,如下所示:

<script language="javascript">
    var transports = "<%=api.transports%>";
    var httpsTransport;
    var httpTransport;
    var splittedTransports= transports.split(',');
    for(i = 0; i < splittedTransports.length; i++)
    {
        if(splittedTransports[i]=="https") {
            httpsTransport="https";
        } else if (splittedTransports[i]=="http") {
            httpTransport="http";
        }
    }
</script>
我做错了什么

我想允许用户选中复选框并保存表单,当他尝试编辑表单时,我想显示他在以前的操作中保存的内容。 因此,当他尝试编辑时,我尝试从后端读取值,并希望显示选中的特定选项。


<script language="javascript">
var transports = "<%=api.transports%>";
var splittedTransports= transports.split(',');
for(i = 0; i < splittedTransports.length; i++)
{
if(splittedTransports[i]=="https"){
   document.getElementById("transport_https").checked = true;
}else if (splittedTransports[i]=="http"){
   document.getElementById("transport_http").checked = true;
}
}

</script>
var transports=“”; var splittedTransports=transports.split(','); 对于(i=0;i
HTML:

<div class="checkbox">
       <label  class="checkbox inline " >
           <input type="checkbox"  id="transport_http" name="transport_http"  value="http" />
       </label>
       <label  class="checkbox inline" >
           <input type="checkbox" id="transport_https" name="transport_https"  value="https"/>
       </label>
</div>

代码中的变量是声明的,但未定义的。 首先给他们一个随机值,然后用
if

<script language="javascript">
 var transports = "<%=api.transports%>";
    var httpsTransport = 'no';
    var httpTransport = 'no';
    var splittedTransports= transports.split(',');
    for(i = 0; i < splittedTransports.length; i++)
    {
    if(splittedTransports[i]=="https"){
        httpsTransport="https";
    }else if (splittedTransports[i]=="http"){
        httpTransport="http";
    }
    }

</script>

var transports=“”;
var httpsTransport='否';
var httpTransport='否';
var splittedTransports=transports.split(',');
对于(i=0;i
为什么不使用javascript选中并取消选中复选框?我建议您尝试html5中的数据属性。确保
位于
HTML
上方。它似乎只是没有定义,即当试图建立
un/checked
JS值时,JS值还不存在(例如,因为源代码中的HTML在JS之上)@MohitArora是的,这是我正在做的,我可以做waht用户选择的第一个操作,现在当他尝试编辑表单时,我需要显示他之前做了什么,这就是我被困在这里的地方。@Ratha不要使任务过于复杂。请看一看如何做到这一点。
if-else if
可以简化为
if(splittedTransports[i]=“https”| | | splittedTransports[i]=“http”){document.getElementById(“transport”+splittedTransports[i])。checked=true;
<div class="checkbox">
       <label  class="checkbox inline " >
           <input type="checkbox"  id="transport_http" name="transport_http"  value="http" />
       </label>
       <label  class="checkbox inline" >
           <input type="checkbox" id="transport_https" name="transport_https"  value="https"/>
       </label>
</div>
<script language="javascript">
 var transports = "<%=api.transports%>";
    var httpsTransport = 'no';
    var httpTransport = 'no';
    var splittedTransports= transports.split(',');
    for(i = 0; i < splittedTransports.length; i++)
    {
    if(splittedTransports[i]=="https"){
        httpsTransport="https";
    }else if (splittedTransports[i]=="http"){
        httpTransport="http";
    }
    }

</script>