2016-05-03 30 views
-1

モーダルポップアップをフォームで使用していますが、基本的な検証コードを設定できますが、必要なものをどのように移動するかはわかりません。jQuery条件付きのテキスト入力とファイル入力

画像のアップロードには<textarea><input type="file">の2つの入力があります。 少なくとも1つは有効であることを確認したいと思います。例は次のようになり ...

1)ユーザは、テキストエリアに説明しかし//this is fine and file upload not required

2)ユーザがどちらも加算せず、要求されたファイルではなく、説明を//this is fine and textarea not required

3)を追加しない画像を追加しますそのうちの1つを記入する。

ありがとうございます。

+0

次のような何かをしようとしていますこの? https://jsfiddle.net/jaumzera/erpvfdhf/2/ – Jaumzera

+0

ありがとうございますが、好ましくはjQueryによる検証 –

答えて

0

ここには、fiddleの問題があります。

$('#validate').click(function(){ 
    var text = false; 
    var file = false; 

    if ($('textarea').val() != '') 
     text = true; 

    if ($('input').val() != '') 
     file = true; 

    if (!text && !file) 
     alert ('Woah! Enter one of those!'); 
    else 
     alert('I can live with one input'); 

}); 

clickまたはsubmitまたは任意選択したイベントでは、TEXTAREAとファイル入力の値を見てみましょう。値がfalseの場合、フィールドが「無効」であることがわかります。両方のフィールドが「無効」であることがわかった場合は、ユーザーにそれらのフィールドの1つを入力するように促します。それ以外の場合は、「有効な」入力があり、他のアクションに進むことができます。

コードに適切なセレクタを適用してください。

0

HTML

<input type="file" id="text" /> 
<textarea id="textarea"></textarea> 
<input type="button" value="ok" id="ok" /> 

Javascriptを

ここ
$(function() { 
    $("#ok").click(function() { 
    var $text = $("#text"); 
    var $textarea = $("#textarea"); 
    if ($text.val() == "" && $textarea.val() == "") { 
     alert("fill at least one"); 
    } 
    }); 
}); 

が完了フィドルです:jQueryのバリデータを使用した例がここにもあります

jQuery Validation - Two fields, only required to fill in one

関連する問題