首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >编写onkeyup=函数

编写onkeyup=函数
EN

Stack Overflow用户
提问于 2016-04-13 20:27:55
回答 1查看 109关注 0票数 0

我正在编写一个用javascript onkeyup事件生成html的php脚本,如下所示:

代码语言:javascript
复制
// generate the function text
            $fn_text = "checkContentQuizAnswer(\"#".$var_name."\",\"".$equation_solutions_array[0][0]."\",\"{'incorrect_values':[";     
                for($r=1;$r<count($equation_solutions_array);$r++) {
                    // THIS ISNT WORKING CORRECTLY, NEED A BETTER WAY TO PASS INCORRECT INFO
                    $fn_text .= "{'equation':'".$equation_solutions_array[$r][0]."','message':'".$equation_solutions_array[$r][1]."'}";
                    if(($r+1)<count($equation_solutions_array)) {
                        $fn_text .= ",";
                    }
                }
            $fn_text .= "]}\")";

但是这不起作用..。它生成的代码如下所示:

代码语言:javascript
复制
onkeyup="checkContentQuizAnswer("#theonlyvariable","27.62*5","{'incorrect_values':[{'equation':'27.62+5','message':'you added 5'},{'equation':'27.62-5','message':'you subtracted 5'}]}")" 

然而,它并没有起作用。错误包括关于缺少}的投诉,MathJax ( eval()样式库)未定义。

我确信这是我解析标签的onkeyup部分的方式,但是我不能得到正确的组合/语法。

有人能看到一个明显的问题吗?

谢谢,亚历克斯

EN

回答 1

Stack Overflow用户

发布于 2016-04-13 20:39:40

尽管您转义了PHP文件中的引号,但javascript解析器中的引号并未转义。将onKeyUp中的引号更改为单引号以解决此问题。您还需要转义JSON中的引号- json_encode() function可以帮助您做到这一点。您需要输出如下内容:

代码语言:javascript
复制
onkeyup="checkContentQuizAnswer('#theonlyvariable','27.62*5','{\'incorrect_values\':[{\'equation\':\'27.62+5\',\'message\':\'you added 5\'},{\'equation\':\'27.62-5\',\'message\':\'you subtracted 5\'}]}')" 
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/36598377

复制
相关文章

相似问题

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