jQuery读取非空和可见文本字段

IHC*_*oid 6 javascript php jquery

我正在建立一个多步问卷.我有3个问题(3个div),DOM看起来像这样(伪代码).我的问题是

1.如何在q3中读取字段中的值为url(type ='url')的值?

2.什么只读取非空文本/ textarea/url字段?意思是我只想在用户输入内容时读取文本字段.

我想是一种愚蠢的方式来阅读每个字段,无论它是否为空.然后我有isset/empty php命令来查看这是否为空,如果是,那么我将不会取值.但有没有更好的方法来实现这一目标?

 <div id=q1>
   <input type='text' id='q1text'>
   <input type='button'>   // this btn will hide q1 and show q2.
 </div>

 <div id=q2 style="display:none">
   <input type='textarea' id='q2textarea'>
   <input type='button'>  // this btn will hide q2 and show q3
 </div> 

 <div id=q3 style="display:none">
   <input type='url' id='q3url'>    // this btn will submit the form data.
   <input type='submit'>
 </div>
Run Code Online (Sandbox Code Playgroud)

Mil*_*war 6

1.如何在q3中读取字段中的值为url(type ='url')的值?

它有id属性.你可以使用id选择器和.val()

$('#q3url').val();
Run Code Online (Sandbox Code Playgroud)

2.什么只读取非空文本/ textarea/url字段?意思是我只想在用户输入内容时读取文本字段.

您可以使用过滤器函数来过滤掉其中没有值的元素:

var allnonemptyurls = $('input[type="url"]').filter(function () {
  return !!this.value;
})
Run Code Online (Sandbox Code Playgroud)