Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/448.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
基于服务器变量使用javascript更改div的值_Javascript_Html_Parse Platform - Fatal编程技术网

基于服务器变量使用javascript更改div的值

基于服务器变量使用javascript更改div的值,javascript,html,parse-platform,Javascript,Html,Parse Platform,我有以下从web服务器加载字符串的div: <div id="productTitle" class="productType"><h2>{{productType}}</h2></div> 为什么这样不行?是否因为脚本是在“productType”变量加载到DOM之前执行的 为什么这个不行 因为innerHTML还包含一个标记,它将是您要比较的字符串的一部分 使用jQuery的解决方案文本(函数) 虽然我相信你可以这样做,但我认为这是一个糟糕

我有以下从web服务器加载字符串的div:

<div id="productTitle" class="productType"><h2>{{productType}}</h2></div>
为什么这样不行?是否因为脚本是在“productType”变量加载到DOM之前执行的

为什么这个不行

因为innerHTML还包含一个
标记,它将是您要比较的字符串的一部分


使用jQuery的解决方案
文本(函数)


虽然我相信你可以这样做,但我认为这是一个糟糕的做法,你也应该考虑:

  • 创建一个新表字段以保存完整的“用户友好”标题
  • 替换“{productType}}”的内容,请替换为正确的名称

您没有提到替换“{productType}}”的是什么,如果您提到,我可能会更好地帮助您。

如果在最后一段代码中的if语句之前运行
console.log(d1.innerHTML)
,它会给您带来什么?为什么您不在
{productType}}
中的服务器上执行此操作?我想我不清楚,我的问题是你如何用“衬衫,紧身裤”等替换productType?你是在用javascript替换它吗?
<script>
    $( "div.productType" ).replaceWith( "<h2>American Apparel T-Shirt</h2>" );
</script>
function onbodyload(){
    var d1 = document.getElementById('productTitle');
    if(d1.innerHTML==='SHIRT'){
        d1.innerHTML='American Apparel T-Shirt';
    }
};
$(function(){
   $( "#productTitle h2" ).text(function(_, existingText ){
      switch (existingText ){
         case 'SHIRT':
            return 'American Apparel T-Shirt';
            break;
         // add other cases
         default:
           return existingText; 
      }    
   });
});