2013-07-04 9 views
-1

Je dois y parvenir. Lorsque l'utilisateur clique sur un bouton, nous devons empêcher l'utilisateur de cliquer à nouveau avant que l'action ne soit terminée. Cela fonctionne dans Firefox. Mais pas dans IE et Chrome. Y a-t-il des paramètres que je dois définir dans IE et Chrome? J'utilise Primefaces 3.5.jQuery.prop fonctionne dans firefox mais pas dans IE et Chrome

J'ai essayé avec .attr aussi. Firefox fonctionne, mais IE et Chrome ne fonctionnent pas.

xhtml

<?xml version="1.0" encoding="UTF-8"?> 
<!DOCTYPE html PUBLIC "-//W3C//Dtd XHTML 1.0 transitional//EN" "http://www.w3.org/tr/xhtml1/Dtd/xhtml1-transitional.dtd"> 
<html xmlns="http://www.w3c.org/1999/xhtml" 
xmlns:ui="http://java.sun.com/jsf/facelets" 
xmlns:f="http://java.sun.com/jsf/core" 
xmlns:h="http://java.sun.com/jsf/html" 
xmlns:p="http://primefaces.org/ui" 
xmlns:hx="http://www.ibm.com/jsf/html_extended"> 

<h:head> 
<title>Enterprise</title> 
<meta http-equiv="keywords" content="enter,your,keywords,here" /> 
<meta http-equiv="description" 
    content="A short description of this page." /> 
<meta http-equiv="content-type" content="text/html; charset=UTF-8" /> 

<link type="text/css" rel="stylesheet" 
    href="#{request.contextPath}/theme/primefaces-aristo/themeMain.css" /> 

<link rel="SHORTCUT ICON" href="../../theme/csl.ico" id="ma1001" /> 

<script src="../../scripting.js"></script> 

<script type="text/javascript"> 
    jQuery('form1').submit(function() { 
     jQuery('input[type=submit]', this).prop('disabled', true); 
    }); 
</script> 


<f:view locale="#{pc_Ma1001.userLocale}" /> 

<f:loadBundle basename="messages.MessageResources" var="msg" /> 
</h:head> 

<f:metadata> 
<f:event listener="#{pc_Ma1001.onPageLoadBegin}" type="preRenderView"></f:event> 
</f:metadata> 

<h:body> 
<h:form id="form1" enctype="multipart/form-data" prependId="false"> 
    <ui:include src="../../theme/menubar.xhtml" /> 
      <td><p:commandButton type="submit" value="Create" 
     styleClass="commandButton" id="maintenance_command_add" 
     action="#{pc_Ma1001.doMa1001_command_addAction}" ajax="false"></p:commandButton> 
    </td> 
</h:form> 
</h:body> 
</html> 
+0

Je doute votre sélection "form1" trouvera votre formulaire. Je pense que vous vouliez utiliser "# form1". Mais je ne suis même pas sûr que c'est l'ID final qui est généré – Ian

+0

peut être que vous devez utiliser '# form1' au lieu de' form1'? – krishgopinath

+0

@lan J'ai essayé d'utiliser # form1 aussi mais toujours le même résultat. Travaillant seulement dans Firefox. – hahagal

Répondre

-1

Essayez ceci:

jQuery('form1').submit(function(evt) { 
    jQuery('input[type=submit]', $(evt.target)).prop('disabled', true); 
}); 
0

Essayez d'envelopper votre script dans un prêt DOM:

jQuery(document).ready(function(){ 
    jQuery('#form1').submit(function() { 
     jQuery('input[type=submit]', this).prop('disabled', true); 
    }); 
}) 
+0

J'ai essayé vos codes toujours le même problème, firefox fonctionne, pas pour IE et Chrome. – hahagal

+0

Ensuite, c'est bizarre. Je ne sais pas ce qui cause cela ... –

+0

Btw, que vous utilisez? – hahagal

Questions connexes