2012-07-03 55 views
2

我有一个提交类型为图片数量的表单。每张图片都有不同的标题。我需要找出点击图片的标题。但是我的表单提交里面的点击功能不起作用。jquery点击函数里面的表单提交功能

我的形式是:

<form action='log.php' id='logForm' method='post' > 
    <? 
    for($j=1;$j<=5;$j++) 
    { 
    ?> 
    <input type="image" src="<?=$img;?>" title="<?=$url;?> id="<?="image".$j?> class="images" /> 
    <? 
    } 
    ?> 
    </form> 

的Jquery:

$("#logForm").submit(function(e) 
    { 


    $(".advt_image").click(function(event) { 
     var href=event.target.title; 
    }); 





      var Form = { }; 
      Form['inputFree'] = $("#inputFree").val(); 
     // if($("#freeTOS").is(":checked")) 
        Form['freeTOS'] = '1'; 

      $(".active").hide().removeClass('active'); 
      $("#paneLoading").show().addClass('active'); 


var url="http://"+href; 

     $.post('processFree.php', Form, function(data) 
      { 
        if(data == "Success") 
        { 
          $("#FreeErrors").html('').hide(); 
          swapToPane('paneSuccess'); 

        setTimeout(function() { location=url }, 2500); 


        return; 




        } 

        swapToPane('paneFree'); 
        $("#FreeErrors").html(data).show(); 
      }); 

      return false; 
    }); 

我怎样才能获得点击图像的这种$("#logForm").submit(function())内标题价值?

如何使用点击图像的ID?

+0

什么用的缩进? – elclanrs

回答

2

可以使用event.target财产

$("#logForm").submit(function(e) 
    alert($(e.target).attr('title')); 
}); 

http://api.jquery.com/event.target/

[更新]

我才意识到这是行不通的。我不认为有一个简单的解决方案。您必须跟踪输入上的点击事件并稍后使用它。

jQuery submit, how can I know what submit button was pressed?

$(document).ready(function() { 
    var target = null; 
    $('#form :input[type="image"]').click(function() { 
     target = this; 
     alert(target); 
    }); 
    $('#form').submit(function() { 
     alert($(target).attr('title')); 
    }); 
}); 

[更新2] - .focus不工作,但.click正在 http://jsfiddle.net/gjSJh/1/

+0

感谢您的回复。我是jquery的新手。你能给我举个例子吗?我可以在$(“#logForm”)中使用这个event.target。提交(function() {}); ? – Zendie

+0

谢谢乔伊斯巴布..让我试试 – Zendie

+0

很抱歉..alert留言是空白的:( – Zendie

0

我看到它的方式,您有多个提交按钮。取而代之的呼吁提交,称之为对这些按钮的点击,所以你可以很容易地访问一个用户选择的功能:

$('input.images').click(function(e) { 
    e.preventDefault(); //stop the default submit from occuring 
    alert($(this).attr('title'); 

    //do your other functions here. 

}); 
0

检查下面的代码,你可以得到点击图像的标题。

单一的点击

$(document).ready(function() 
{ 
    $('#logForm').submit(function(e){ 
     $(".images").click(function(event) { 
      alert(event.target.title); 
     }); 

     return false; 
    }); 
}); 

双击所有元素

$(document).on('vclick', '.control', function (e) { // .control is classname of the elements 
    var control = e.target; 
    alert(e.currentTarget[0].id); 
}); 

,如果你没有得到在适当的警报消息

$(document).ready(function() 
{ 
    $('#logForm').submit(function(e){ 
     $(".images").dblclick(function(event) { 
      alert(event.target.title); 
     }); 

     return false; 
    }); 
}); 
+0

.images是一流的输入类型的图像? – Zendie

+0

雅就可以得到称号点击图像使用类 – Hkachhia

+0

Plz完整的标题和图像的id在您的lo op – Hkachhia

0

//运行时的Click事件,只是调试使用Firebug。按照你的渲染页面

$(document).ready(function(){ 
    $("form input[type=image]").click(function() { 
     $("input[type=image]", $(this).parents("form")).removeAttr("clicked"); 
     $(this).attr("clicked", "true"); 
    }); 
}); 
在窗体的submitt行动

现在加入follwing行为和yupeee ondomready

0

补充!......你说对了!....

$("#logForm").submit(function(e) 
    { 
     var title = $("input[type=image][clicked=true]",e.target).attr("title"); 
     ..... 
     ..... 
    });