jquery移动搜索选项

时间:2014-01-07 12:41:30

标签: jquery jquery-mobile

<!DOCTYPE html>
<html>
<head>
<title>colls</title>
<link rel="stylesheet" href="./jq/jquery.mobile-1.4.0.css" />
<script src="jquery.js"></script>
<script src="./jq/jquery.mobile-1.4.0.js"></script>
<script src="pay.js"></script>
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">

</head>
<body>
<header data-role="header"  data-theme="b">

<h1>liste 1</h1>
</header>
<div  data-role="content" data-theme="b">
<form class="ui-filterable">
<input id="filterBasic-input" data-type="search"  placeholder="votre pays" >
</form>
<div  data-filter="true" data-input="#filterBasic-input"data-theme="b"datainset="true">


<div data-role="collapsible">

<h2><span>alsace</span> <a class="gene02 ui-btn-right"data-role="button"
data-inline="true" data-mini="true" data-icon="search">generique</a></h2>
<p>code:3300</p>
<p class="pays">france</p>

这是我的脚本

$(document).ready(function() {
$(".gene02").click(function() {    
var $hui= $(this).closest('div').find('.pays').html();  
$("#filterBasic-input").val($hui).submit();
});

});

当我点击.gene02时,它会提交结果并对其进行过滤,但输入的值为空白,并且未显示清除按钮。请帮助。

当我从我的脚本中删除.submit时,值会更改,但不会被过滤。 请求帮助

1 个答案:

答案 0 :(得分:0)

首先,不要在jQuery Mobile中使用.ready(),而是使用pagecreate

其次,您需要在包含可过滤数据的div上手动触发可过滤

HTML

<div id="filter" data-filter="true" data-input="#filterBasic-input" data-theme="b" datainset="true" >

JS

$(document).on("pagecreate", function () {
  $(".gene02").on("click", function () {
    var $hui = $(this).closest('div').find('.pays').html();
    $("#filterBasic-input").val($hui);
    $("#filter").filterable("refresh"); /* this */
  });
});
  

<强> Demo