从 jquery .each 函数返回确认值

发布于 2024-11-25 13:57:28 字数 652 浏览 1 评论 0原文

我在上传文件的按钮上有一个单击处理程序。它根据预定义值检查表格第一列每个单元格的内容,并且仅在用户确认后继续。我可以让下面的代码工作,但感觉不优雅。有什么建议吗?

$('#upload').click(function() {
    var proceed;
    $('#mytable tr td:first-child').each(function(a, b) {
        if ($(b).html() == 'x') {
            proceed = confirm('u sure?');
            return false;
        }
    });
    return proceed;
});

编辑:

我想做类似以下的事情,我只是不知道正确的语法(这不起作用):

$('#upload').click(function() {
    return $('#mytable tr td:first-child').each(function(a, b) {
        if ($(b).html() == 'x') {
            return confirm('u sure?');
        }
    });
});

I have a click handler on a button that uploads a file. It checks the contents of each of the cells of the first column of a table against a predefined value and only proceeds on user confirmation. I can get the below to work but it doesn't feel elegant. Any suggestions?

$('#upload').click(function() {
    var proceed;
    $('#mytable tr td:first-child').each(function(a, b) {
        if ($(b).html() == 'x') {
            proceed = confirm('u sure?');
            return false;
        }
    });
    return proceed;
});

EDIT:

I want to do something like the following i just dont know the correct syntax (and this doesnt work):

$('#upload').click(function() {
    return $('#mytable tr td:first-child').each(function(a, b) {
        if ($(b).html() == 'x') {
            return confirm('u sure?');
        }
    });
});

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

記憶穿過時間隧道 2024-12-02 13:57:28

这是至少简化代码的一种方法

$('#upload').click(function() {
    //Get File Input Value
    var found = $('#mytable').find('tr td:first-child:contains(something)').length;
    var proceed =  found ? confirm('u sure') : true/false (depending on what you want to happen);

    return proceed;
});

这是一个 jsfiddle,显示了修改后的代码的实际操作: http:// /jsfiddle.net/Akkuma/R5Mzt/ (更新为更准确)

我刚刚在 IE7、IE9 和 Chrome 中进行了快速测试,发现输入的文件值足够唯一,以至于它无法遇到包含问题。两者都输出 C:\fakepath\nameofile.png。

Here is one way to simplify your code at the very least

$('#upload').click(function() {
    //Get File Input Value
    var found = $('#mytable').find('tr td:first-child:contains(something)').length;
    var proceed =  found ? confirm('u sure') : true/false (depending on what you want to happen);

    return proceed;
});

Here is a jsfiddle showing the modified code in action: http://jsfiddle.net/Akkuma/R5Mzt/ (updated to be more accurate)

I just ran a quick test in IE7, IE9, and Chrome and found the input's file value to be unique enough that it could not run into a contains problem. Both output C:\fakepath\nameoffile.png.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文