jQuery如何将“禁用剪切和粘贴脚本”与单选按钮列表结合起来?

Posted

技术标签:

【中文标题】jQuery如何将“禁用剪切和粘贴脚本”与单选按钮列表结合起来?【英文标题】:jQuery how to combine "disable cut and paste script" with radio button list? 【发布时间】:2012-09-28 07:46:17 【问题描述】:

我正在使用以下脚本来禁用表单上的“剪切和粘贴”:

$(document).ready(function()
  $('.employeeEmailConfirm, .emailConfirm').bind("cut copy paste",function(e) 
      alert('thou. shalt. not. PASTE!');
      e.preventDefault();
  );
);

取自以下线程:How to disable Paste (Ctrl+V) with jQuery?

但我不想显示“警报”我想显示隐藏的 div。

但是,我的表单有单选按钮列表,并且某些表单元素会根据选择的值显示或隐藏:

$(document).ready(function() 
// attach event to employee radio buttons 
$("span.isEmployee").find("input").click(function() 
    if ($(this).val() == "1") 
        $(".aboutyou").show();
        $(".yourdetails").show();
        $(".referrer").hide();
        $(".security").show();
        $(".signup").show();
        $("#emailTr").show();
        $("#employeeEmailMessage1").show();
        $("#employeeEmailMessage2").hide();
        $("#employeeEmailRetype").show();
        $("#nonemployeeEmail").hide();
        $("#nonemployeeEmailRetype").hide();
        $("#emailMessageSubBrand").show();
        SetEmailEnableDisable(true);
     else 
        $(".aboutyou").show();
        $(".yourdetails").show();
        $(".referrer").show();
        $(".security").show();
        $(".signup").show();
        $("#emailTr").hide();
        $("#employeeEmailMessage1").hide();
        $("#employeeEmailMessage2").hide();
        $("#employeeEmailRetype").hide();
        $("#nonemployeeEmail").show();
        $("#nonemployeeEmailRetype").show();
        $("#emailMessageSubBrand").hide();
        SetEmailEnableDisable(false);
    
);

如何将“剪切复制粘贴”脚本与我的显示/隐藏单选按钮列表结合起来?

我的失败尝试:

$(document).ready(function()
  $('.employeeEmailConfirm, .emailConfirm').bind("cut copy paste",function(e) 
      alert('thou. shalt. not. PASTE!');
      $("span.isEmployee").find("input").click(function() 
          if ($(this).val() == "1") 
              $("#employeeEmailMessage2").show();
               else 
                 $("#nonemployeeEmailMessage").show();
      e.preventDefault();
  );
);

【问题讨论】:

【参考方案1】:

我搞定了:

$(document).ready(function() 
    $("span.isEmployee").find("input").click(function() 
        if ($(this).val() == "1") 
            $('.employeeEmail, .employeeEmailConfirm').bind("cut copy paste", function(e) 
                $("#employeeEmailMessage2").show();
                e.preventDefault();
            );
         else 
            $('.email, .emailConfirm').bind("cut copy paste", function(e) 
                $("#nonemployeeEmailMessage").show();
                e.preventDefault();
            );
        
    );
);

【讨论】:

以上是关于jQuery如何将“禁用剪切和粘贴脚本”与单选按钮列表结合起来?的主要内容,如果未能解决你的问题,请参考以下文章

将 TextView 与单选按钮标签对齐

如何在表单之外制作单选按钮?

PHP - 检索与单选按钮对应的所有数据

与单选按钮关联的复选框

java单选按钮传值

如何将值从 DB 传递到单选按钮组?