jquery ddslick无法正常工作

时间:2014-09-27 16:47:01

标签: javascript jquery html html5

好的,这是我之前提出的问题: iFrame with Variable URL in PHP Variable 我甚至将它设置为在页面准备就绪时自动打开,但仍无法正常工作。

现在我正在使用ddslick,因此我可以在表单中的每个下拉列表旁边显示一个图标。 这就是我在做的事情:

<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<script type="text/javascript" src="jquery.ddslick.min.js"></script>

然后在下拉列表中:

<select form="form1" id="MyMenu">
    <option value="0" data-imagesrc="http://example.com/entry/value0.png" data-description="Description 0" >Nothing</option>
    <option value="1" data-imagesrc="http://example.com/entry/value1.png" data-description="Description 1" >Value 1</option>
    <option value="2" data-imagesrc="http://example.com/entry/value2.png" data-description="Description 2" >Value 2</option>
</select>

脚本:

<script>
//Make it slick!
$('#make-it-slick').on('click', function(){
    $('#MyMenu').ddslick();
});
//Restore Original
$('#restore').on('click', function(){
    $('#MyMenu').ddslick('destroy');
});
$(document).ready(function(){
   $('#MyMenu').ddslick(); // Turn on Slickness
});
</script>

最后是表格

<form name="form1" id="form1">
    <input type="submit" name="submit" id="submit" value="Submit Form">
    <button id="make-it-slick"> Make it slick!</button>
    <button id="restore"> Restore to Original</button>
</form>

1 个答案:

答案 0 :(得分:1)

请使用以下代码替换您在脚本标记中编写的代码

<script type="text/javascript">
//Make it slick!
$(document).ready(function(){
   $('#MyMenu').ddslick(); // Turn on Slickness

   $('#make-it-slick').click(function(){
    $('#MyMenu').ddslick();
    return false; //do not propogate click
   });

   $('#restore').click(function(){
    $('#MyMenu').ddslick('destroy');
    return false; //do not propogate click
    });

});
</script>

使用您的代码,单击按钮时,将执行该单击并提交表单。表单中的button标记提交表单。所以现在我们需要做的是当点击按钮时,表单不应该提交,但它应该只执行javascript代码。我们通过在click方法中返回false来做到这一点。

希望这会有所帮助:)