2017-07-25 7 views
0

私はすべての質問の後にメモセクションでアンケートに取り組んでいます。ノートは最初にEndまたはF10を押した後にのみ表示されます。質問2に進み、質問1に戻ると、質問1の音符セクションは、メモがなければ再び隠されます。.val()。length!= 0を使用してテキストボックスを表示

しかし、全くのノートセクションのいずれかの書き込みがある場合、私は彼らが質問2.

から1を質問するために戻った後に表示したままにしたい私は(.val使用することによって、これを達成しようとしています)。長さ!= 0を指定すると、文字が1つでも書き込まれている場合にノートが表示されます。私の問題が.val()。lengthであるのか、私のpreventDefaultコマンドであるのかわからないのですが、ここではノートを表示しないようにするデフォルトのアクションを避けたいのです。

<style> 
#[% QuestionName() %]_div {display:none} 
</style> 

<script> 

$(document).keydown(checkNote); 
function checkNote(f){ 
f = f || window.event; 
if (f.keyCode == '121' || f.keyCode == '35'){ 
    f.preventDefault(f); 
    $("#[% QuestionName() %]_div").css('display', 'block'); 
    } 
} 

function displaynote(d){ 
    d = d || window.event; 
    if ($("#[% QuestionName() %]_div").val().length != 0) { 
     d.preventDefault(d); 
     $("#[% QuestionName() %]_div").css('display', 'block'); 
     } 
     } 
<script> 

私の問題があるか、 .val()への代替を提供するかもしれない場所を誰かが私に言うことができれば。長さ!= 0をそれが問題だ場合、それは非常に参考になるよりも。

ありがとうございます!

+0

これは値の長さを比較します、ちょうどvalまたはほんの長さを望まないのですか? – ThisGuyHasTwoThumbs

+0

valはうまくいくでしょうか?数字だけのためのvalか文字か?箱に文字が1つでもあれば、手紙や数字が表示されます。私もvalを試してみました。それは私が必要とすることをしませんでした。おそらく問題は私のコードのどこかにあります。 – JakeHammond

+0

ValはDOM要素の値を取得するので、文字列またはintを返すことができます。おそらくは、valをログに記録してみてください。 – ThisGuyHasTwoThumbs

答えて

2

要素#[% QuestionName() %]_divは入力ですか?

$(...).val()は、入力要素に対してのみ機能します(たとえば、divで関数を呼び出すと、常に空の文字列が返されます)。

divの場合は、$(...).text()または$(...).html()を使用してコンテンツを取得できます。

+0

$(...)を知っていただきありがとうございます。要素。私は.text()と.htmlをdivと一緒に使用しようとしましたが、それはうまくいかないかもしれませんが、動作しませんでした。私は入力 'var $ input1;を取得しようとしました。フォーカス(function(){$ input1 = $(this);}); $( '#[%QuestionName()%] '' if($ input1.val()。length!= 0) 'を挿入してここに挿入しますが、動作させることができませんでした - JakeHammond 6分前 – JakeHammond

0

最後に、問題の内容を知りましたが、いくつかありました。私は、$(ドキュメント)ページでは、それが呼び出されていなかったので、準備ができていたときにそれを呼び出すための.readyイベントにdisplaynote機能を移動

if ($('#[% QuestionName() %]').val().length != 0) { 

私はヴァルを使用しました()。長さが、私は使用を確認しました非div要素、そのガブリエルのおかげで、その後削除されたd = d || window.event;とd.preventDefault(d)$(document).readyは引数を取らないので

関連する問題