-2

我一直在搞乱两种形式,并想将它们结合起来。每个表单都有一个单独的 JS。

我希望能够获取 Form#1 中的值并将它们放在 Form#2 的答案中。

有人可以帮忙吗?

表格 #1

$(window).load(function(){
jQuery(function($) {

    var multiTags = $("#multi");

    function handler(e) {
        var jqEl = $(e.currentTarget);
        var tag = jqEl.parent();
        switch (jqEl.attr("data-action")) {
        case "add":
            tag.after(tag.clone().find("input").val("").end());
            break;
        case "delete":
            tag.remove();
            break;
        }
        return false;
    }

    function save(e) {
        var tags = multiTags.find("input.tag").map(function() {
            return $(this).val();
        }).get().join(',');
        alert(tags);
        return false;
    }

    multiTags.submit(save).find("a").live("click", handler);
});
});

</script>

表格#2

$(document).ready(function(){

    $('.submit').click(function(){
    var answers = [];
    $.each($('.field'), function() {
        answers.push($(this).val()); 
    });

    if(answers.length == 0) { 
        answers = "none"; 
    }   
    alert(answers);
    return false;                           
    }); 
});
4

1 回答 1

0

我会让我的评论成为答案,并详细说明。

我做了一个简单的小小提琴,你可以用它作为起点。基本上,它将抓取页面上输入的所有值并将它们分配给一个变量。从那里,您的脚本可以将该变量发送到您的邮件脚本,该脚本会处理所有内容......

var data = "";
$("input").each(function(index, element) {
    data += $(this).val() + ", ";
});
alert(data);​

该脚本查找所有<input>标签,然后通过.val(). 在您的表单中,您将在单击时运行它,$("input[type=submit]").click(function(){ ... });其中...将是上面的代码。显然,您不想提醒用户在框中输入了什么(毕竟是他们输入的),因此您可以将该变量传递给您的邮件脚本(我会在谷歌上搜索如何做到这一点,因为您的邮件脚本可能是用 PHP 编写的,所以谷歌类似pass jQuery variable onto PHP)。

小提琴:http: //jsfiddle.net/charlescarver/4AfTR/2/


有没有办法对输入进行分组,以便数据仅使用输入框 1、2、3(例如)。

是的,这条线在这里...

$("input")

...查找<input>页面上的所有标签。如果您只想要<input>box并将它们的值分配给变量,那么给它们一个类并1更改为. 例如)只会将带有类的框分配给变量()。23"input"".classname"$(".tag")<input>.tag<input class="tag />

于 2012-09-08T19:37:50.220 回答