【问题标题】:Merge two JavaScript scripts合并两个 JavaScript 脚本
【发布时间】:2011-03-31 05:51:45
【问题描述】:

我有两个 JavaScript 代码 sn-ps。当单击“更新”按钮时,它们会执行特定任务。

我想合并它们。任何帮助表示赞赏。

JavaScript 1:当按钮被点击时,它会检查是否至少有一个复选框被选中:

function doUpdate(){
    var c = document.getElementsByTagName('input'); 
    for (var i = 0; i < c.length; i++) { 
        if (c[i].type == 'checkbox' && c[i].checked == true) { 
            // At least one checkbox is checked     
            document.holiDay.command.value= 'update';
            document.holiDay.submit();  
            return true; 
        } 
    } 
    // Nothing has been checked 
    alert("Please identify what warehouses comply:"); 
    return false; 
}

javascript 2:检查是否已检查任何复选框并单击更新按钮时,如果未选中任何复选框,请选中所有内容或取消选中所有内容;然后执行更新功能:

function doUpdate(){
    checked=false;
    function All (holiDay) {
        var all= document.getElementById('holiDay');
        if (checked == false){
            checked = true
        }
        else{
            checked = false
        }
        for (var i =0; i < all.elements.length; i++){ 
            all.elements[i].checked = checked;
        }
    }
    //after checked or unchecked all checkboxes then submit the form and other functionality
    document.holiDay.command.value= 'update';
    document.holiDay.submit();  
    return true; 
} 

【问题讨论】:

  • 您希望脚本在不同情况下表现如何?这两个动作似乎有点冲突。
  • 您能否用文字描述(就像您对 2 个现有功能所做的那样)您希望新功能做的所有事情?
  • @palswim, @Peter Ajtai:这个提问者不接受答案,我不会浪费我的时间来处理那些永远不会被接受的糟糕的问题。也许是一个巨魔......
  • @Juan:我不知道如何接受答案..有人可以告诉我。我没有看到绿色按钮??
  • 您可以单击一个复选标记大纲,它会变为绿色以指示已接受的答案,这是在 SO 帮助我们找到答案的最重要的事情。它就在带有选票的向上/向下箭头的正下方。你应该更仔细地问你的问题,没有人能弄清楚你在做什么。通常最好将您的问题从您的特定上下文中抽象出来,以帮助我们理解。很多时候,这将帮助您更清楚地看到问题。您当前的问题看起来像“有人可以做我的工作吗?”

标签: javascript function forms checkbox


【解决方案1】:

我真的不确定你想做什么,但这里有一个尝试:

function doUpdate(){
    var c = document.getElementsByTagName('input');
    for (var i = 0; i < c.length; i++) {
        if (c[i].type == 'checkbox' && c[i].checked == true) {
            // At least one checkbox is checked    
            UpdateHoliday();
            return true;
        }
    }
    // Nothing has been checked
    alert("Please identify what warehouses comply:");
    return false;
}

function UpdateHoliday(){
    checked = false;
    function All (holiDay) {
        var all = document.getElementById('holiDay');
        checked = !checked;
        for (var i =0; i < all.elements.length; i++){
            all.elements[i].checked = checked;
        }
    }
    //after checked or unchecked all checkboxes then submit the form and other functionality
    document.holiDay.command.value = 'update';
    document.holiDay.submit();  
} 

这真的有助于简化和缩进您的代码,以便我们更清楚地理解它。

【讨论】:

    猜你喜欢
    • 2016-04-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-05-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-04-05
    相关资源
    最近更新 更多