首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >这个php生成的javascript有什么问题?

这个php生成的javascript有什么问题?
EN

Stack Overflow用户
提问于 2014-12-21 19:38:19
回答 1查看 98关注 0票数 -3

在主机上,php生成javascript,该javascript会删除以下错误: missing;before语句

生成的代码是:

代码语言:javascript
复制
try{
   obj = document.getElementById('subcat');
    
    }catch(e){}

try{
    obj.innerHTML = "<select name=\"sub_ad_category_id\">   
                          <option value=\"\">-</option>
                          <option value=\"5\">bootle</option>
                          <option value=\"3\">Puzzle</option>
                     </select>";
     }catch(e){}

它是由action.php使用以下代码生成的:

代码语言:javascript
复制
if($var_type=='array') $text = '<select name="+ads_data[sub_ad_category_id]+">';
    else  $text = '<select name="sub_ad_category_id">';
    $text .=   '<option value="">-</option>';
           $res = $ads->get_ads_categories($_SESSION['lang'],$parent_id);
            while($r = mysql_fetch_array($res)){
                $text .= '<option value="'.$r['ad_category_id'].'">'.$r['category_name'].'</option>';
            }
    $text .= '</select>';

    echo "try{obj = document.getElementById('".$id."');}catch(e){}";
    echo "try{obj.innerHTML = ".$text.";}catch(e){}";
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-12-21 19:41:56

看看这行..。

代码语言:javascript
复制
obj.innerHTML = "<select name="sub_ad_category_id"><option value="">-</option></select>";

..。修改(缺少一些+符号,并将值处的双引号更改为单'')

代码语言:javascript
复制
obj.innerHTML = "<select name=" + sub_ad_category_id + "><option value=''>-</option></select>";

The + is simple

  • + '' single quotes是在最终的
  • +中干净地包含引号的一种方法;否则,您可以使用\"\"斜杠转义引号。

更新

根据我在上面看到的更改,看起来您是如何构建字符串的。在构建字符串时不要使用enter键。试着这样..。

代码语言:javascript
复制
var html = "<select name=\"sub_ad_category_id\">";
html += "<option value=\"\">-</option>";
html += "<option value=\"5\">bootle</option>";
html += "<option value=\"3\">Puzzle</option>";
html += "</select>";
ob.innerHTML = html;

..。或者..。

代码语言:javascript
复制
ob.innerHTML = "<select name=\"sub_ad_category_id\"><option value=\"\">-</option><option value=\"5\">bootle</option><option value=\"3\">Puzzle</option></select>";

查看此

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

https://stackoverflow.com/questions/27588990

复制
相关文章

相似问题

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