2017-03-06 45 views
0

我只在chrome中遇到一個奇怪的問題。如果文件輸入存在一些驗證錯誤,我試圖在onClick事件的「保存」按鈕上設置文件輸入顏色。我試過jquery和簡單javascript來設置顏色,但他們都沒有爲我工作。這僅僅是一個問題,因爲我在mozilla firefox嘗試,似乎工作正常。在chrome中設置輸入文件文本顏色時出現問題

我使用的是WebForms,我有一個由c#代碼生成的文件輸入列表。在JavaScript的代碼如下:

$("input[id^='DC_LVP5EMulti_FU5M_']").each(function (i) { 
    var index = $(this).attr("index");        
    //$("#DC_LVP5EMulti_FU5M_" + index).css('color', 'black'); 
    document.getElementById("DC_LVP5EMulti_FU5M_" + index).style.color = "#000000"; 
}); 

東西,我注意到,而在鍍鉻調試,我用document.getElementById("DC_LVP5EMulti_FU5M_2").style.color = "red";語句設置文件輸入顏色紅色console和它的工作,但它沒有一個文件上傳等等該文本是'沒有文件選擇',並且在我將所有文件輸入文本顏色再次更新爲黑色後,唯一沒有更改的文本是沒有文本'沒有文件選擇'但上傳的文件名稱,所以我猜這個問題是當一個輸入文件包含一個文件並且文本已經從'No file choosen'改爲文件名。

以前有人遇到過這個奇怪的問題嗎?

enter image description here

+0

我不確定這個問題是否與這些問題重複。他在問爲什麼Chrome中會出現這種行爲。所指出的「重複」可能會解決潛在的問題,但實際上並未提出(或回答)相同的問題。 – adam0101

+0

@Rory McCrossan我不認爲這是重複的,因爲不是提供給我如何更改當前的代碼,如果您有任何其他想法如何解決當前問題而不必更改許多事情會更好。此外,在這裏我不是在討論如何自定義輸入文件類型,但我正在談論的只是在'chrome'中發生的特定問題。你可以給我這些鏈接作爲出發點,但不能作爲重複問題。如果你有一個特定的原因,你認爲這是重複的,請在答案中顯示。 –

回答

1

有將要限制,以你可以用文件上傳控制的只是出於安全考慮做什麼。我不知道所涉及的所有錯綜複雜的問題,但我確實知道,只需調整控制方式並隱藏本地控制就容易了。查看另一個堆棧溢出問題的示例:Cross-browser custom styling for file upload button

因爲您只是使用普通的舊標籤和div/span,所以您應該可以將文本和顏色更改爲任何您想要的內容。

+0

感謝您的答案,但我不能改變這一點,因爲有很多代碼需要改變,並且有很多javascript等邏輯需要適應鏈接中提供的這個版本。讓我感到困惑的是,爲什麼要改變'chrome'中的文本顏色以及如果'chrome'將它視爲安全問題,爲什麼'mozilla'不會以相同的方式運行? –

相關問題