2009年7月9日星期四

Re: [fw-mvc] Dojo IE issues, ugrent assistance needed!

There are different solutions I was thinking about:

1) Don't use server-side isChecked() method for redirects but redirect
on a client-side by JS;
2) Update the server-side isChecked() method to fix this IE6/7 issue
by strip_tags or preg_replace;
3) Fix Dojo itself;
4) Use hidden element + Button instead of Submit;

On Thu, Jul 9, 2009 at 1:38 PM, Remy Damour<remy.damour@gmail.com> wrote:
> Now I have the error too.
>
> I just tried to reproduce the error by hand (ie. without ZF and
> directly coding html and dojo calls) to see if it was a dojo related
> problem or zf implementation of dojo.
> Sharing your code won't be necessary since it's broken on my test too.
>
> I removed dijit.form.Form widget and tried to submit by mouse click. I
> still have the error.
> You should definitely raise a ticket on trac.dojotoolkit.org if no
> similar one exists.
>
> I've tested it on IE8, it's fine, but not working neither on IE7 nor IE6.
> good luck.
>
> (ps: as a quick fix, I would extract value on server side using regexp)
>
> On Thu, Jul 9, 2009 at 12:11 PM, Kostyantyn Shakhov<kshakhov@gmail.com> wrote:
>> Based on how your buttons are displayed I think they are not Dojo buttons yet.
>>
>> I may share my code if you want to give it a try but I'm using Dojo
>> programmatic way together with ZF.
>>
>> On Thu, Jul 9, 2009 at 12:49 PM, Remy Damour<remy.damour@gmail.com> wrote:
>>> thanks for spotting the error (I called require on wrong widget -
>>> oups), I've updated it and it still ok for me in IE7.
>>>
>>> On Thu, Jul 9, 2009 at 11:30 AM, Kostyantyn Shakhov<kshakhov@gmail.com> wrote:
>>>> Sorry it was wrong copy-paste. The correct form I was testing is:
>>>>
>>>> <form action=" " method="post" id=" " >
>>>> <input id="b1" name="b1" value="B1" type="submit" />
>>>> <input id="b2" name="b2" value="B2" type="submit" />
>>>> </td>
>>>> </form>
>>>>
>>>> Re your test it's working because it's not a dojo form. You have a
>>>> dojo parser failure (Couldn't load class 'dijit.form.Form').
>>>>
>>>> On Thu, Jul 9, 2009 at 11:26 AM, Remy Damour<remy.damour@gmail.com> wrote:
>>>>> Hi,
>>>>>
>>>>> I've made a quick test file here
>>>>> (http://remydamour.com/formPostTest.php) and it looks like working
>>>>> fine with ie7 and keyboard submition (space | enter).
>>>>>
>>>>> (i've renamed first 'b2' button into 'b1' + closed <form> node).
>>>>>
>>>>> I hope that helps,
>>>>> Regards, Remy
>>>>>
>>>>> On Wed, Jul 8, 2009 at 6:36 PM, Kostyantyn Shakhov<kshakhov@gmail.com> wrote:
>>>>>> I need to submit a Dojo form by pressing Enter or Space on a submit button.
>>>>>>
>>>>>> I use the following simple Dojo form with two submit buttons:
>>>>>>
>>>>>> <form action=" " method="post" id=" " >
>>>>>> <input id="b2" name="b2" value="B2" type="submit" />
>>>>>> <input id="b2" name="b2" value="B2" type="submit" />
>>>>>> </td>
>>>>>>
>>>>>> The browser is IE7.
>>>>>>
>>>>>> If I use Dojo 1.2.3 the form submit by keyboard DOESN'T work.
>>>>>>
>>>>>> If I update Dojo to either 1.3.0 or 1.3.1 the form submit by keyboard
>>>>>> works perfect but the POST data are incorrect under IE7:
>>>>>>
>>>>>> array(1) {
>>>>>>  ["b1"] => string(292) "<SPAN class="dijitReset dijitInline"
>>>>>> dojoAttachPoint="iconNode" unselectable="on"><SPAN class="dijitReset
>>>>>> dijitToggleButtonIconChar" unselectable="on">✓</SPAN></SPAN><SPAN
>>>>>> class="dijitReset dijitInline dijitButtonText" id=b1_label
>>>>>> dojoAttachPoint="containerNode" unselectable="on">B1</SPAN>"
>>>>>> }
>>>>>>
>>>>>> instead of:
>>>>>>
>>>>>> array(1) {
>>>>>>  ["b1"] => string(2) "B1"
>>>>>> }
>>>>>>
>>>>>> The POST data is correct under Firefox3.
>>>>>>
>>>>>> This Dojo-IE7 issue causing the
>>>>>> Zend_Dojo_Form_Element_Button::isChecked() method failure.
>>>>>>
>>>>>> The issue is urgent and I appreciate any advices.
>>>>>>
>>>>>
>>>>
>>>
>>
>

没有评论: