标签需要在Jasmine中的同一行之前关闭吗?

时间:2018-07-16 21:45:58

标签: javascript html unit-testing jasmine

我正在为我的JavaScript编写茉莉花测试,在每次测试前都需要带有两个或三个选项的select标记。所以,我将这段代码放在了beforeEach函数中

$('<select class="tags" multiple name="tagList" id="tagListID" title="Tag List" size=3 class="form-control select"><option onmousedown="multiSelect(event, this)" value="java" id="java">'+ tag1 +'</option><option onmousedown="multiSelect(event, this)" value="php" id="php">'+ tag2 +'</option> </select>').appendTo('body'); 

有效。但是,当我使用appendTo('body')函数将单行分成多行时,我的测试没有通过。

$('<select class="tags" multiple name="tagList" id="tagListID" title="TagList">').appendTo('body');
$('<option onmousedown="multiSelect(event, this)" value="java" id="java">'+ tag1 +'</option>').appendTo('body');
$('<option onmousedown="multiSelect(event, this)" value="php" id="php">'+ tag2 +'</option>').appendTo('body');
$('</select>').appendTo('body');

我不知道如何将单行变成多行。这是行不通的,因为开始和结束标记应该在同一行上(我不这么认为)。

谢谢

1 个答案:

答案 0 :(得分:0)

这还行吗,因为它仍将下一行视为同一脚本?在Javascript(Vanilla)中,只要需要在新行开始并重新引入引号,我就只需使用+。我看到人们还使用(`)打开,并使用(`)最后关闭,它们具有相同的功能,但没有(+)。

$('<select class="tags" multiple name="tagList" id="tagListID" title="TagList">' +
'<option onmousedown="multiSelect(event, this)" value="java" id="java">'+ tag1 +'</option>' +
'<option onmousedown="multiSelect(event, this)" value="php" id="php">'+ tag2 +'</option>' +
'</select>').appendTo('body');