2009-11-13 95 views
2

我在通过boxcomponent进行表单提交时遇到了一些困难。我正在使用boxComponent,因为我已经定制了按钮图像,奇怪的是透明度只适用于boxComponent。如何通过Extjs BoxComponent提交表单来获取单选按钮值?

基本上这个想法是,当我点击我的boxComponent按钮,它会做两两件事:

  1. 提交2个单选按钮值和1组组合框的值通过HTTP POST到sendstock.php
  2. 在成功提交,它就会进入下一个页面

这是我已经得到了boxComponent:

var bc_button = new Ext.BoxComponent({ 
     autoEl: { 
      tag: 'img', 
      src: 'next_button.gif' 
     }, 
     style: 'cursor: pointer;', 
     listeners: { 
      enable: function(c) { 
       c.getEl().on('click', function() { 
       myformpanel.getForm().getEl().dom.action = 'sendstock.php'; 
       myformpanel.getForm().getEl().dom.method = 'POST'; 
       myformpanel.getForm().submit({ 
        success:function() { 
         window.location.replace("toNextPage.php"); 
        } 
       }); 

      }); 
      } 

     } 
}); 

这里是我的问题,其结果是按如下:

comboxbox = 3, 
radiobtn1 = on 
radiobtn2 = on 

我需要什么radiobtn1和radiobtn2的要提交的价值,应该为我提供AvailableNoStock,而不是on

此外,这是在成功提交后将用户发送到下一页的正确方法吗?

谢谢!

+0

让我们看看您试图提交的表单的标记。 – 2009-11-13 10:29:35

+0

另外,为什么你不让表单自己提交,并让'sendstock.php'发出重定向头到'toNextPage.php',不需要JavaScript? – 2009-11-13 10:30:46

回答

2

确保您在单选按钮上设置了inputValue配置属性。

var rad = new Ext.form.Radio({ name: 'something', inputValue: 'purple'}); 

inputValue值应该以表单发送而不是'on'发送。