0

当您在输入中输入文本时,对话框打开。只有在没有找到值时才应该打开:fiddle = http://jsfiddle.net/tzxS2/

code/css/js: 似乎不能以某种形式工作:

 <form id="dacform" method='get' action='dac' onsubmit="return check_domain_input()" accept-charset='utf-8'>
    <input name='domain' type="text" style="font-size:15px;" class="searchbox"/>
    <select style="background:#f8f8f8; margin-left:4px; font-size:15px;" class="selectlist slight" id="selectdomain" name="tld">
      <option value=''>( all )</option>
      <option value="co.uk">co.uk</option>
      <option value="me.uk">me.uk</option>
      <option value="org.uk">org.uk</option>
      <option value="com">com</option>
    </select>
    <input onclick="check_domain_input()" class="btn grey bbig" name="search" type="submit" value="Search" style="width:59px; margin-left:7px; font-size:15px;" />
    </form><br />
    Our domain registration system is highly automated so we register your domain names fast and secure.

    <div id="dialog" title="Attention!" style="display:none">
    Please enter a domain name to search for.
    </div>
<div onclick="check_domain_input()">Click</div>

<div id="dialog" title="Attention!" style="display:none">
    Please enter a domain name to search for.
</div>

<script>
    function check_domain_input()
    {        
        $( "#dialog" ).dialog(); // Shows the new alert box.

        var domain_val = document.getElementsByName('domain');

        if (domain_val[0].value.length > 0)
        {
            return true;
        }

        $( "#dialog" ).dialog();

        return false;
    }
</script>
4

2 回答 2

1

在我看来,您总是用函数主体的第一行打开对话框:

   $( "#dialog" ).dialog(); // Shows the new alert box.

无论输入的值如何。

尝试删除该行。

于 2012-07-18T05:01:29.870 回答
0

根据您的情况,您不应在代码中两次调用 ui-dialog。

尝试这个..

<script>
function check_domain_input()
{        
var domain_val = document.getElementsByName('domain');

if (domain_val[0].value.length > 0)
  {
    return true;
  }

else
  {
    $( "#dialog" ).dialog();
    return false;
  }
}
</script>
于 2012-07-18T05:25:28.573 回答