2014-09-30 2 views
1

Yikes! Мои переключатели отображаются в каждом браузере, кроме Safari и Google Chrome.Html.RadioButtonFor Радио Кнопки не отображаются в Safari или Chrome

Использование ASP.NET MVC 4, я писал об этом в одном из моих взглядов:

<!-- model property1 --> 
    <div class="form-group col-md-4"> 
     @Html.LabelFor(m => m.property1) 
     <div class="form-control"> 
      @Html.RadioButtonFor(m => m.property1, true) 
      @Html.Label("Yes") 
      @Html.RadioButtonFor(m => m.property1, false) 
      @Html.Label("No") 
     </div> 
    </div> 

Но в конечном итоге глядя, как это на странице:

all of my buttons ran away

Так что я попытался предоставив обе идентификаторам радиокнопки уникальные идентификаторы, чтобы убедиться, что проблема устранена:

@Html.RadioButtonFor(m => m.property1, true, new {@id = "property1_true"}) 
@Html.Label("Yes") 
@Html.RadioButtonFor(m => m.property1, false, new {@id = "property1_false"})) 
@Html.Label("No") 

Это не так. В Google Chrome, то HTML выглядит следующим образом:

<!-- model property1 --> 
<div class="form-group col-md-4"> 
    <label for="property1">Lorem ipsum dolor sit amet, consectetur adipisicing elit?</label> 
    <div class="form-control"> 
     <input id="property1_true" name="property1" type="radio" value="True" /> 
     <label for="Yes">Yes</label> 
     <input id="property1_false" name="property1" type="radio" value="False" /> 
     <label for="No">No</label> 
    </div> 
</div> 

Я бегу Safari 5.1.7 для Windows, и Chrome 37,0.

+1

В консоли на этих браузерах вы видите ошибки? можете ли вы также опубликовать html, который отображается этими браузерами? –

+0

@Matt Спасибо за ответ. Я добавил HTML, предоставленный Chrome. Я считаю, что Safari делает то же самое, но я бы хотел дважды проверить, если это необходимо. Что касается ошибок консоли, я получаю ошибки, связанные с jQuery-migrate: 'JQMIGRATE: ведение журнала активен JQMIGRATE: jQuery.event.handle недокументирован и устарел' и т. Д. Ничего другого. Я не думаю, что ошибки связаны с этой проблемой. – alex

+1

интересно, что теги есть и правильные, но они не отображаются. из любопытства, если вы помещаете визуализированный код в свой вид вместо помощника, делает ли он правильное отображение? –

ответ

0

После долгого простоя решение было болезненно легким. Я не проверить CSS достаточно тщательно:

input:not([type='checkbox']) { 
    -webkit-appearance: none; 
} 

Так что это не действительно проблема совместимости браузера, ни проблема кодирования, ни уродливы HTML вопрос (и т.д. и т.д. и т.п.).

Смежные вопросы