#jquery #internet-explorer
#jquery #internet-explorer
Вопрос:
У меня есть эта функция нажатия кнопки jquery:
$("#NextButton_ButtonCtrl").live("click", function (event) {
var i = 0;
var success = 1;
var n = $("input[type=File]").length;
alert('number of files:' n);
$("input[type=File]").each(function () {
success = 0;
alert('for is here');
/*var labelId = "FondationLabel" i "_LabelCtrl";
var intitule = $("span[id=" labelId "]").text();
var style = $(this).attr('style');
var value = $(this).val();
if (value == "" amp;amp; style == "True") {
success = 0;
$("#errorSpan").html('<span ID=errorSpan class=error-span >Merci de charger le fichier' intitule '</span>');
//var MPE = $find("MPE");
// MPE.show();
alert('Merci de charger le fichier' intitule);
return false;
}
i = i 1;*/
});
alert(success);
if (success == 0) {
event.preventDefault();
return false;
}
проблема заключается в тестировании с ie :
var n = $("input[type=File]").length;
alert('number of files:' n);
я получаю 0, цвет 4 (правильный)
Комментарии:
1.
$("input[type=File]").length
используйте это при оповещении, чтобы получить количество элементов, и у вас нетi
значения, которое совпадает сi = i 1;
его закомментированным, не удивляйтесь, если вы получите ноль во всех браузерах2. Вал, проблема в приведенном выше коде .каждый. не работает с ie 6.0
3. также попробуйте использовать файл
$("input[type=file]").length
в нижнем регистре вместо File .4. Да, кажется, что нижний регистр — это pb. теперь у меня проблема с $ (this).attr(‘style’); не работает, т.е. т.Е. Спасибо, Вал
Ответ №1:
попробуйте использовать файл в нижнем регистре $("input[type=file]").length
вместо File
Ссылка из sitepoint.com
http://reference.sitepoint.com/css/attributeselector
Чувствительность к регистру Значение, указанное в селекторе атрибута, чувствительно к регистру, если значение атрибута на языке разметки чувствительно к регистру. Таким образом, значения атрибутов id и class в HTML чувствительны к регистру, а значения атрибутов lang и type — нет.
XHTML, когда он подается как XML, всегда чувствителен к регистру; подробнее об этом см. Различия между HTML и XHTML.
Не всегда легко запомнить, какие атрибуты HTML чувствительны к регистру, а какие нет. Обычно лучше предположить, что все чувствительно к регистру, но не полагайтесь на это!
ОБНОВИТЬ ВТОРОЙ ВОПРОС
$("input[type=File]").each(function (i,n) {
//$(n).attr('style');// note each. has a i,n on the function passed i, is for the increment, n is for the nth element,
// sometimes, the each function when using $(this) may refer to every element selected,
// so i,n is the correct way to do it,
});
ОБНОВЛЕНИЕ 2
http://msdn.microsoft.com/en-us/library/985bhaz6.aspx
пожалуйста, проверьте, как добавить атрибуты, я не знаком с этим, но я думаю / надеюсь, что это сработает
writer.AddAttribute("data-style", "true");
Комментарии:
1. Вал, пожалуйста, взгляните на приведенный выше код. $(this).attr(‘style’) сейчас не работает: <имя ввода =»FondationTextBrowser0 $ DocFile» тип =»File» идентификатор=»FondationTextBrowser0_DocFile» accept=»pdf» класс=»проверка регистра [пользовательский [email]]» стиль =»True» />
2. не используйте style=»true» помните, что style [зарезервирован для] атрибута css, используйте
data-style="true"
, затем используйте$(n).data('style')
//вернет true;3. стиль данных не является атрибутом входного файла, верно? я хочу что-то, что может помочь мне отфильтровать мой входной файл. это цель style=»True»,»False»
4.согласно вашему коду, да, у вас будет что-то вроде
<file type="file" data-style="true" />
api.jquery.com/jQuery .данные подробнее об этом.data()
и о том, как это работает, 🙂5. проблема в том, что я устанавливаю attr на стороне сервера с помощью c #, когда я делаю file.intellisence, среди них нет стиля данных. как я могу этого добиться
Ответ №2:
вы не можете стилизовать определенные атрибуты входного файла. Это угроза безопасности, говорят мне настоящие эксперты. Если вам действительно нужно изменить внешний вид, уменьшите непрозрачность до 0 при вводе файла и измените стиль ввода текста и кнопки, чтобы они располагались позади
Комментарии:
1. JB, я просто ищу атрибут на стороне сервера (asp.net c #) ввода файла, который может помочь мне отфильтровать входной файл в jquery.можете ли вы предложить дальше. На данный момент я нашел стиль и пытаюсь отфильтровать входной файл по его значению, отображаемому в DOM