這是一個與我的問題[HERE]有關的持續性問題,如果您正在尋找一點背景知識。什麼是正確的jQuery語法用於使一個輸入的函數適用於所有輸入?
我是一個初學者&自我感興趣的網頁編碼器,希望在jQuery中放置函數,以使這些函數在任何焦點輸入/元素中工作。
我從這裏開始,有三種功能,但只在<textarea>
:id="dataInput_0"
上有效。
<textarea
data-id="0"
class="classOne classTwo"
id="dataInput_0"
name="xInput_row_1"
onFocus="functionOne();"
onBlur="functionTwo();"
onKeyUp="functionThree();">
</textarea>
我問及接受有關如何使用jQuery的監聽器,應用功能,以任何<textarea>
細胞與給定的類很好的提示和信息。但是我只能想出如何應用的重點和模糊函數如下:
<script type="text/javascript">
$(document).ready(function(){
$('.classOne').keypress(function(e){
if (e.which == 13)
{
alert ("message-return key not allowed");
return false;
}
});
$('.classOne').focus(function() {
var d = this;
d.className = d.className + " InFocus";
});
$('.classOne').blur(function() {
var d = this;
d.className = "classOne";
});
})
</script>
而且現在<textarea>
代碼:
<textarea
data-id="0"
class="classOne classTwo"
id="dataInput_0"
name="xInput_row_1"
onKeyUp="functionThree();">
</textarea>
functionThree()是招袋在這裏。由於我對語法的限制(不存在?)理解,我遇到了將jscript函數移到javaScript函數中的麻煩。
javaScript函數與識別分隔符和分割從Excel複製的數據相關,然後粘貼到大量的<textarea>
中。
代碼:
<script type="text/javascript">
function functionThree() {
var x = document.forms["formName"]["dataInput_0"].value;
if (x.indexOf('\t') > 0 && x.indexOf('\n') > 0) {
alert ("Can't paste rows & Columns in blocks, blah, blah, blah message");
document.forms["formName"]["dataInput_0"].value = "";
return false;
}
else
if (x.indexOf('\t') > 0) {
var delimiterT = x.split('\t');
for (var i = 0; i < delimiterT.length ; i++)
document.getElementById("dataInput_" + i).value = (delimiterT[i]);
}
else
if (x.indexOf('\n') > 0) {
var delimiterN = x.split('\n');
var j = 0;
for (var i = 0; i < delimiterN.length ; i++) {
document.getElementById("dataInput_" + j).value = (delimiterN[i]);
j += 4;
}
}
else
return false;
}
</script>
的j += 4;
是因爲我假定的示例形式與4列。如果我有24列,顯然我會j += 24;
到下一個<textarea>
下的焦點。
所以上面的javaScript只適用於["dataInput_0"]
,我希望它能夠適用於任何集中的<textarea>
。
正確的jQuery語法是什麼?
在此先感謝!
順便說一句,'$(本).addClass(「富可視」);'是你在你的重點處理需要; '$(this).removeClass(「InFocus」);'是你模糊處理程序中所需要的。但是我建議從這個問題中刪除那些處理程序的代碼,因爲它們正在工作,並且與您實際詢問的問題無關。還要注意,如果未找到指定的字符串,則indexOf()將返回「-1」。 – nnnnnn 2013-04-21 07:09:30