即使使用文字标记添加jquery,tpl文件也不起作用

时间:2013-10-23 00:55:59

标签: php jquery smarty prestashop

我已经在tpl文件中添加了一个jquery脚本,即使使用文字标签也不行 什么是错的?

<script type='text/javascript'>
{literal}
jQuery(document).ready(function()
{jQuery.validator.setDefaults(
{debug: true,success: "valid"});
$( "#PayformRIP" ).validate({rules: {
rip: "required",
rip2: {
  equalTo: "#rip"
}}});

$( "#dialogForUser" ).dialog({
        autoOpen: false,
        show: "blind",
        hide: "explode",
        title: "receive your money",
        width: 500,
        height:300
});


$( "#link" ).click(function() {
    var dialogWidth = $(this).attr('dialogWidth');
    var dialogHeight = $(this).attr('dialogHeight');

    $( "#dialogForUser" ).dialog( "option", "width", dialogWidth );
    $( "#dialogForUser" ).dialog( "option", "height", dialogHeight );
    $( "#dialogForUser" ).dialog( "open" );
    return false;
});
var rip = $('<div />').html('</br><form id="PayformRIP" method="post" action="" >RIP de votre compte:<input type="text" required="true" name="rip" class="input" ><p id="titre" >RIP de votre compte:</p><input type="text" required="true" id="rip2" name="rip2" class="input" ><input type="submit" id="ripbutton" name="ripbutton" ></form>');
var paypal = $('<div />').html('</br><form id="PayformPAL" method="post" action="" >Email Paypal:<input type="email" required="true" name="paypal" class="input" ></br>Email Paypal:<input type="email" required="true" name="paypal" class="input" ><input type="submit" name="paybutton" id="paybutton"   ></form>');rip.id = 'rip';paypal.id = 'rip';$('input:radio[name="postage"]').change(
function(){


    if ($(this).val() == 'paypal') {

        // appends the 'appended' element to the 'body' tag
         $(rip).remove();
        $(paypal).appendTo("#dialogForUser");
    }
    else {

        // if it's the 'No' button removes the 'appended' element.
        $(paypal).remove();
        $(rip).appendTo("#dialogForUser");
    }
});


});
{/literal}

这是我的代码,我正在等待你的命题,因为我已经尝试了很多但没有好的结果。

1 个答案:

答案 0 :(得分:0)

我看到了

jQuery(document).ready(function()

应该是

jQuery(document).ready(function($)
or
$(document).ready(function()

修改

您可以搜索jQuery no-conflict (wrapper)了解有关此情况的更多信息。

就个人而言,最后的正确答案,为什么要这样做,因为它已经完成,我无法提供,

我唯一知道的是,当您使用$(doc…时,您不能在该范围内使用$(美元符号)的其他函数。如果您使用不jQuery(document).ready(function()的{​​{1}},而不是使用例如$,那么您将使用$(this).addClass()